Skip to content

Instantly share code, notes, and snippets.

@marcusramberg
Created February 2, 2020 09:56
Show Gist options
  • Save marcusramberg/45edd3f1292b599b468bc5290eb66f12 to your computer and use it in GitHub Desktop.
Save marcusramberg/45edd3f1292b599b468bc5290eb66f12 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
$ prove -l
t/00-basic.t ..................... ok
t/backend-file-basic.t ........... ok
t/backend-file-messages.t ........ ok
t/backend.t ...................... ok
Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 2 just after 1.
t/config.t .......................
Dubious, test returned 2 (wstat 512, 0x200)
All 1 subtests passed
t/connection.t ................... ok
t/connection_name.t .............. ok
t/irc-basic.t .................... ok
t/irc-commands.t ................. ok
t/irc-connect.t .................. ok
t/irc-events.t ................... ok
t/irc-message.t .................. ok
t/irc-real-servers.t ............. skipped: TEST_NETWORKS=all is not set
t/irc-steal-nick.t ............... ok
t/log.t .......................... ok
[2020-02-02 10:55:56.15235] [35207] [error] [214b10cd] Test 500 page at /Users/marcus/Source/convos/lib/Convos.pm line 45.
t/production-resources.t ......... ok
t/start.t ........................ ok
t/user.t ......................... ok
t/util.t ......................... ok
t/version.t ...................... skipped: TEST_ALL=1
[2020-02-02 10:55:57.87563] [35212] [error] [be4dd347] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 9.
# got: '500'
# expected: '200'
[2020-02-02 10:55:57.95858] [35212] [error] [a6b1a4c2] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '401 Unauthorized'
# at t/web-admin.t line 12.
# got: '500'
# expected: '401'
[2020-02-02 10:55:57.96297] [35212] [error] [82c828e4] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 15.
# got: '500'
# expected: '200'
[2020-02-02 10:55:57.96624] [35212] [error] [8db4cdec] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 19.
# got: '500'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/contact"'
# at t/web-admin.t line 19.
# got: undef
# expected: 'mailto:root@localhost'
# Failed test 'exact match for JSON Pointer "/default_connection"'
# at t/web-admin.t line 19.
# got: undef
# expected: 'irc://chat.freenode.net:6697/%23convos'
# Failed test 'exact match for JSON Pointer "/forced_connection"'
# at t/web-admin.t line 19.
# got: undef
# expected: '0'
# Failed test 'exact match for JSON Pointer "/open_to_public"'
# at t/web-admin.t line 19.
# got: undef
# expected: '0'
# Failed test 'exact match for JSON Pointer "/organization_name"'
# at t/web-admin.t line 19.
# got: undef
# expected: 'Convos'
# Failed test 'exact match for JSON Pointer "/organization_url"'
# at t/web-admin.t line 19.
# got: undef
# expected: 'https://convos.by'
[2020-02-02 10:55:57.97198] [35212] [error] [68e090f5] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '400 Bad Request'
# at t/web-admin.t line 26.
# got: '500'
# expected: '400'
# Failed test 'exact match for JSON Pointer "/errors/0/message"'
# at t/web-admin.t line 26.
# got: 'Internal Server Error.'
# expected: 'Contact URL need to start with "mailto:".'
# Failed test 'exact match for JSON Pointer "/errors/1/message"'
# at t/web-admin.t line 26.
# got: undef
# expected: 'Connection URL require a scheme and host.'
# Failed test 'exact match for JSON Pointer "/errors/2/message"'
# at t/web-admin.t line 26.
# got: undef
# expected: 'Organization URL require a scheme and host.'
[2020-02-02 10:55:57.97599] [35212] [error] [5058132c] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 38.
# got: '500'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/default_connection"'
# at t/web-admin.t line 38.
# got: undef
# expected: 'irc://chat.freenode.net:6697/%23convos'
# Failed test 'exact match for JSON Pointer "/open_to_public"'
# at t/web-admin.t line 38.
# got: undef
# expected: '1'
[2020-02-02 10:55:57.97949] [35212] [error] [be39049a] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 46.
# got: '500'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/contact"'
# at t/web-admin.t line 46.
# got: undef
# expected: 'mailto:jhthorsen@cpan.org'
# Failed test 'exact match for JSON Pointer "/default_connection"'
# at t/web-admin.t line 46.
# got: undef
# expected: 'irc://chat.freenode.net:6697/%23mojo'
# Failed test 'exact match for JSON Pointer "/forced_connection"'
# at t/web-admin.t line 46.
# got: undef
# expected: '1'
# Failed test 'exact match for JSON Pointer "/open_to_public"'
# at t/web-admin.t line 46.
# got: undef
# expected: '1'
# Failed test 'exact match for JSON Pointer "/organization_name"'
# at t/web-admin.t line 46.
# got: undef
# expected: 'Superheroes'
# Failed test 'exact match for JSON Pointer "/organization_url"'
# at t/web-admin.t line 46.
# got: undef
# expected: 'https://metacpan.org'
[2020-02-02 10:55:57.98400] [35212] [error] [50abca69] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 64.
# got: '500'
# expected: '200'
# Failed test 'element for selector "h1 .subtitle" exists'
# at t/web-admin.t line 64.
# Failed test 'element for selector "h1 .subtitle[href="https://metacpan.org"]" exists'
# at t/web-admin.t line 64.
# Failed test 'exact match for selector "h1 .subtitle"'
# at t/web-admin.t line 64.
# got: ''
# expected: 'for Superheroes'
[2020-02-02 10:55:58.05690] [35212] [error] [80b71432] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 72.
# got: '500'
# expected: '200'
[2020-02-02 10:55:58.06058] [35212] [error] [2d6d4db3] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-admin.t line 73.
# got: '500'
# expected: '200'
# Failed test 'element for selector "h1 .subtitle" exists'
# at t/web-admin.t line 73.
# Failed test 'exact match for selector "h1 .subtitle"'
# at t/web-admin.t line 73.
# got: ''
# expected: 'for Superheroes'
Can't call method "role" on an undefined value at t/web-admin.t line 78.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 52.
t/web-admin.t ....................
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 32/52 subtests
[2020-02-02 10:55:58.61891] [35213] [error] [2228efc2] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-base-url.t line 25.
# got: '500'
# expected: '200'
# Failed test 'exact match for content'
# at t/web-base-url.t line 25.
# got: '<!DOCTYPE html>
# <!-- Request ID: 2228efc2 -->
# <html>
# <head>
# <title>Server error (development mode)</title>
# <meta http-equiv="Pragma" content="no-cache">
# <meta http-equiv="Expires" content="-1">
# <script src="/mojo/jquery/jquery.js"></script>
# <script src="/mojo/prettify/run_prettify.js"></script>
# <link href="/mojo/prettify/prettify-mojo-dark.css" rel="stylesheet">
# <style>
# a img {
# border: 0;
# }
# body {
# background: url(/mojo/pinstripe-light.png);
# color: #445555;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: normal;
# line-height: 1.5em;
# margin: 0;
# }
# :not(pre) > code {
# background-color: #eef9ff;
# border: solid #cce4ff 1px;
# border-radius: 5px;
# color: #333;
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# padding: 0.4em;
# }
# h1 {
# color: #2a2a2a;
# font-size: 1.5em;
# margin: 0;
# }
# pre {
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# margin: 0;
# white-space: pre-wrap;
# }
# pre > code {
# display: block;
# font: 1.0em Consolas, Menlo, Monaco, Courier, monospace;
# margin-bottom: 0.7em;
# margin-top: 0.7em;
# }
# table {
# border-collapse: collapse;
# width: 100%;
# }
# td { padding: 0.5em }
# .box {
# background-color: #fff;
# border: 1px solid #c1c1c1;
# overflow: hidden;
# padding: 1em;
# }
# .code {
# background-color: #1a1a1a;
# background: url(/mojo/pinstripe-dark.png);
# color: #eee;
# text-shadow: #333 0 1px 0;
# }
# .important {
# background-color: rgba(47, 48, 50, .75);
# }
# .infobox {
# color: #333;
# }
# .infobox tr:nth-child(odd) .value {
# background-color: #ddeeff;
# }
# .infobox tr:nth-child(even) .value {
# background-color: #eef9ff;
# }
# .key {
# text-align: right;
# }
# .more table {
# margin-bottom: 1em;
# }
# .spaced {
# margin-left: 5em;
# margin-right: 5em;
# }
# .striped {
# border-top: solid #cce4ff 1px;
# }
# .tap {
# font: 0.5em Verdana, sans-serif;
# text-align: center;
# }
# .value {
# padding-left: 1em;
# }
# .wide {
# width: 100%;
# }
# #error {
# font: 1.5em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: 300;
# margin: 0;
# text-shadow: #333 0 1px 0;
# }
# #footer {
# padding-top: 0.5em;
# text-align: center;
# }
# #nothing {
# border-bottom: 0;
# padding-top: 20px;
# }
# #showcase {
# border-bottom: 0;
# border-top: 0;
# }
# #showcase table {
# margin-top: 1em;
# }
# #showcase td {
# padding-top: 0;
# padding-bottom: 0;
# }
# #showcase .key {
# padding-right: 0;
# }
# #log {
# border-radius: 5px;
# margin-top: 1em;
# }
# #log table {
# margin: 0;
# }
# #mojobar {
# background-color: #1a1a1a;
# background: -webkit-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: -moz-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: linear-gradient(top, #2a2a2a 0%, #000 100%);
# box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
# height: 46px;
# overflow: hidden;
# width: 100%;
# z-index: 1000;
# }
# #mojobar-brand {
# display: inline-block;
# padding-left: 50px;
# padding-top: 4px;
# }
# #mojobar-links {
# display: inline;
# float: right;
# height: 60px;
# margin-top: 0.8em;
# padding-right: 50px;
# }
# #mojobar-links a {
# color: #bbb;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# margin-left: 0.5em;
# text-decoration: none;
# transition: all 200ms ease-in-out;
# }
# #mojobar-links a:hover {
# color: #fff;
# }
# #mojobar-links input {
# background-color: #3a3a3a;
# border: 1px solid rgba(0, 0, 0, 0.1);
# border-radius: 3px;
# color: #eee;
# display: inline;
# margin-left: 1em;
# padding: 4px;
# transition: all 0.15s;
# }
# #mojobar-links input:focus {
# background-color: #fff;
# color: #111;
# outline: 0;
# }
# #mojobar-links form {
# display: inline;
# }
# #more, #trace {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# }
# #more .tap, #trace .tap {
# text-shadow: #ddd 0 1px 0;
# }
# #request {
# border-bottom: 0;
# border-top-left-radius: 5px;
# border-top-right-radius: 5px;
# margin-top: 1em;
# }
# #routes {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# padding-top: 30px;
# }
# #trace {
# border-top: 0;
# }
# #wrapperlicious {
# max-width: 1000px;
# margin: 0 auto;
# }
# </style>
# </head>
# <body>
# <div id="mojobar">
# <a href="https://mojolicious.org" id="mojobar-brand">
# <picture>
# <img src="/mojo/logo-white.png"
# srcset="/mojo/logo-white-2x.png 2x">
# </picture>
# </a> <div id="mojobar-links">
# <a href="https://mojolicious.org/perldoc">Documentation</a>
# <a href="https://kiwiirc.com/nextclient/#irc://irc.freenode.net/mojo?nick=guest-?">Chat</a>
# <a href="https://github.com/mojolicious/mojo/wiki">Wiki</a>
# <a href="https://github.com/mojolicious/mojo">GitHub</a>
# <a href="https://metacpan.org/release/Mojolicious/">CPAN</a>
# <a href="https://groups.google.com/group/mojolicious">MailingList</a>
# <a href="https://twitter.com/perlmojo">Twitter</a>
# <form action="https://www.google.com/cse" target="_blank">
# <input name="cx" type="hidden" value="014527573091551588235:pwfplkjpgbi">
# <input name="ie" type="hidden" value="UTF-8">
# <input name="q" placeholder="Search" type="search">
# </form>
# </div>
# </div>
# <script>
# function mojoDrawer(handle, drawer) {
# $(handle).on('click', function () {
# $(drawer).slideToggle('slow');
# var text = $(handle + ' div.tap').text();
# text = text == "tap for more" ? "tap for less" : "tap for more";
# $(handle + ' div.tap').text(text);
# });
# $(drawer).toggle();
# }
# $(function () {
# mojoDrawer('#trace', '#frames');
# mojoDrawer('#more', '#infos');
# });
# </script>
# <div id="wrapperlicious">
# <div id="nothing" class="box spaced"></div>
# <div id="showcase" class="box code spaced">
# <pre id="error">Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# </pre>
# <div id="context" class="more">
# <table>
# <tr>
# <td class="key">28</td>
# <td class="value wide">
# <pre><code class="prettyprint">sub _asset_version {</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">29</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $app = shift-&gt;app;</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">30</td>
# <td class="value wide">
# <pre><code class="prettyprint"> return $app-&gt;config-&gt;{asset_version} if $app-&gt;config-&gt;{asset_version};</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">31</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">32</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $mode = $app-&gt;mode eq &#39;development&#39; ? &#39;development&#39; : &#39;production&#39;;</code></pre>
# </td>
# </tr>
# <tr class="important">
# <td class="key">33</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my @paths = (</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">34</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;static-&gt;file(&quot;asset/webpack.$mode.html&quot;)-&gt;path,</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">35</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;renderer-&gt;template_path({template =&gt; &#39;sw&#39;, format =&gt; &#39;js&#39;, handler =&gt; &#39;ep&#39;}),</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">36</td>
# <td class="value wide">
# <pre><code class="prettyprint"> );</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">37</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">38</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $version = 0;</code></pre>
# </td>
# </tr>
# </table>
# </div>
# </div>
# <div id="trace" class="box spaced">
# <div id="frames" class="infobox more">
# <table>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos.pm", line 112, in "Convos"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 23, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 112, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 141, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 18, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 146, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server.pm", line 68, in "Mojo::Server"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 104, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Transaction/HTTP.pm", line 60, in "Mojo::Transaction::HTTP"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 219, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 200, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 110, in "Mojo::IOLoop::Stream"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 58, in "Mojo::IOLoop::Stream"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 52, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "t/web-base-url.t", line 25, in "main"</pre>
# </td>
# </tr>
# </table>
# </div>
# <div class="tap">tap for more</div>
# </div>
# <div id="request" class="box infobox spaced">
# <table>
# <tr>
# <td class="key">Request ID:</td>
# <td class="striped value wide"><pre>2228efc2</pre></td>
# </tr>
#
# <tr>
# <td class="key">Method:</td>
# <td class="striped value wide"><pre>GET</pre></td>
# </tr>
#
# <tr>
# <td class="key">URL:</td>
# <td class="striped value wide"><pre>/t/request-base?x=1</pre></td>
# </tr>
#
# <tr>
# <td class="key">Base URL:</td>
# <td class="striped value wide"><pre>http://127.0.0.1:50014</pre></td>
# </tr>
#
# <tr>
# <td class="key">Parameters:</td>
# <td class="striped value wide"><pre>{
# &quot;x&quot; =&gt; 1
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Stash:</td>
# <td class="striped value wide"><pre>{
# &quot;debug&quot; =&gt; [
# &quot;info&quot;
# ],
# &quot;openapi.base_paths&quot; =&gt; [
# [
# &quot;/api&quot;,
# bless( {
# &quot;default_response_codes&quot; =&gt; [
# 400,
# 401,
# 404,
# 500,
# 501
# ],
# &quot;default_response_name&quot; =&gt; &quot;DefaultResponse&quot;,
# &quot;log_level&quot; =&gt; &quot;warn&quot;,
# &quot;parameters_for&quot; =&gt; {
# &quot;/connection/{connection_id}&quot; =&gt; {
# &quot;delete&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ]
# },
# &quot;/connections&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/dialogs&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/embed&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;URL to resource&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;url&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/file&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;file&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;type&quot; =&gt; &quot;file&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;id&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;write_only&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ]
# },
# &quot;/file/:uid/:fid&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;fid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;uid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/notifications&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/notifications/read&quot; =&gt; {
# &quot;post&quot; =&gt; []
# },
# &quot;/settings&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# }
# ]
# },
# &quot;/user&quot; =&gt; {
# &quot;delete&quot; =&gt; [],
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;Retrieve connection list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;connections&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve dialog list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;dialogs&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve notifications list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;notifications&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;highlight_keywords&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Extra keywords to highlight on&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/login&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User password&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/logout&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/user/register&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;exp&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Expire time for a token&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# },
# &quot;token&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Checksum generated by inviteUser&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/{email}/invite&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/email_in_path&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Role to give the user.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;role&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# }
# },
# &quot;route&quot; =&gt; bless( {
# &quot;children&quot; =&gt; [
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;types&quot; =&gt; {
# &quot;num&quot; =&gt; qr/[0-9]+/
# }
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;upload&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;delete&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;info&quot;,
# &quot;controller&quot; =&gt; &quot;url&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/embed&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/dialogs&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_get&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_update&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;login&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/login&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;logout&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/logout&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;createConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;create&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;register&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/register&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file/:uid/:fid&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;read&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;generate_invite_link&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/{email}/invite&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;remove&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;connectionMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setDialogLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;dialogMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;connectionMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setDialogLastRead_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;dialogMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;has_websocket&quot; =&gt; 0,
# &quot;name&quot; =&gt; &quot;api&quot;,
# &quot;parent&quot; =&gt; bless( {
# &quot;children&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;index&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;load_user&quot; =&gt; 1,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;docsdoc_name&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;docs&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;doc_name&quot; =&gt; &quot;&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/docs&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;doc_name&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/docs/*doc_name&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;register&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;register_html&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;login&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logout&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;assetbrowserconfighash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; [
# &quot;xml&quot;
# ]
# },
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;asset/browserconfig&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset/browserconfig.&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/browserconfig.&lt;:hash&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;assetsitehash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; [
# &quot;webmanifest&quot;
# ]
# },
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;asset/site&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset/site.&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/site.&lt;:hash&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;err500&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/err/500&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/err/500&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;errcode&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;err&quot;,
# &quot;controller&quot; =&gt; &quot;url&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/err&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;code&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/err/:code&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;sw&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;js&quot;
# },
# &quot;defaults&quot; =&gt; {},
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/sw&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/sw&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;events&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;start&quot;,
# &quot;controller&quot; =&gt; &quot;events&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/events&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/events&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ],
# &quot;websocket&quot; =&gt; 1
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;help&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/help&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/help&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;chatrest&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;rest&quot; =&gt; &quot;&quot;,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/chat&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;rest&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/chat/*rest&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;settingsrest&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;rest&quot; =&gt; &quot;&quot;,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;rest&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings/*rest&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;inline&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;redirect_if_not_logged_in&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes::Pattern&#39; )
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;fileuidfid&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;pasteemail_hashfile_hash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/paste&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email_hash&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;file_hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/paste/:email_hash/:file_hash&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;webpack.asset&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {},
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;name&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/*name&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;HEAD&quot;,
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;tbaseurl&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/t/base-url&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/t/base-url&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;trequestbase&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/t/request-base&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/t/request-base&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;conditions&quot; =&gt; {
# &quot;agent&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;headers&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;host&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;hidden&quot; =&gt; [
# &quot;attr&quot;,
# &quot;has&quot;,
# &quot;new&quot;,
# &quot;tap&quot;,
# &quot;app&quot;,
# &quot;cookie&quot;,
# &quot;every_cookie&quot;,
# &quot;every_param&quot;,
# &quot;every_signed_cookie&quot;,
# &quot;finish&quot;,
# &quot;helpers&quot;,
# &quot;match&quot;,
# &quot;on&quot;,
# &quot;param&quot;,
# &quot;render&quot;,
# &quot;render_later&quot;,
# &quot;render_maybe&quot;,
# &quot;render_to_string&quot;,
# &quot;rendered&quot;,
# &quot;req&quot;,
# &quot;res&quot;,
# &quot;send&quot;,
# &quot;session&quot;,
# &quot;signed_cookie&quot;,
# &quot;stash&quot;,
# &quot;tx&quot;,
# &quot;url_for&quot;,
# &quot;write&quot;,
# &quot;write_chunk&quot;
# ],
# &quot;namespaces&quot; =&gt; [
# &quot;Convos::Controller&quot;
# ],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;tree&quot; =&gt; [],
# &quot;type_start&quot; =&gt; &quot;:&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;reverse&quot; =&gt; {
# &quot;&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;api&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;assetbrowserconfighash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[6],
# &quot;assetsitehash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[7],
# &quot;chatrest&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[1],
# &quot;connectionMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[21],
# &quot;connectionMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[39],
# &quot;createConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[12],
# &quot;deleteUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[2],
# &quot;deleteUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[25],
# &quot;dialogMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[23],
# &quot;dialogMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[41],
# &quot;docsdoc_name&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[2],
# &quot;embed&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[5],
# &quot;embed_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[26],
# &quot;err500&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[8],
# &quot;errcode&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[9],
# &quot;events&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[11],
# &quot;fileuidfid&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[13],
# &quot;getFile&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[15],
# &quot;getFile_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[34],
# &quot;getSettings&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[7],
# &quot;getSettings_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[28],
# &quot;getUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[3],
# &quot;help&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[0],
# &quot;index&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[1],
# &quot;inviteUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[17],
# &quot;inviteUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[36],
# &quot;listConnections&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[11],
# &quot;listConnections_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[31],
# &quot;listDialogs&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[6],
# &quot;listDialogs_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[27],
# &quot;login&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[4],
# &quot;loginUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[9],
# &quot;loginUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[29],
# &quot;logout&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[5],
# &quot;logoutUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[10],
# &quot;logoutUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[30],
# &quot;notificationMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[13],
# &quot;notificationMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[32],
# &quot;pasteemail_hashfile_hash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[14],
# &quot;readNotifications&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[16],
# &quot;readNotifications_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[35],
# &quot;register&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[3],
# &quot;registerUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[14],
# &quot;registerUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[33],
# &quot;removeConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[18],
# &quot;removeConnection_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[37],
# &quot;setConnectionLastRead&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[20],
# &quot;setConnectionLastRead_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[38],
# &quot;setDialogLastRead&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[22],
# &quot;setDialogLastRead_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[40],
# &quot;settingsrest&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[2],
# &quot;sw&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[10],
# &quot;tbaseurl&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[16],
# &quot;trequestbase&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[17],
# &quot;updateConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[19],
# &quot;updateSettings&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[8],
# &quot;updateUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[4],
# &quot;uploadFile&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[1],
# &quot;uploadFile_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[24],
# &quot;webpack.asset&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[15]
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes&#39; ),
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;handler&quot; =&gt; &quot;openapi&quot;,
# &quot;openapi.object&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/api&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/api&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; )
# }, &#39;Mojolicious::Routes::Route&#39; ),
# &quot;route_prefix&quot; =&gt; &quot;&quot;,
# &quot;validator&quot; =&gt; bless( {
# &quot;coerce&quot; =&gt; {
# &quot;booleans&quot; =&gt; 1,
# &quot;numbers&quot; =&gt; 1,
# &quot;strings&quot; =&gt; 1
# },
# &quot;root_schema_url&quot; =&gt; bless( do{\(my $o = &quot;/Users/marcus/Source/convos/public/convos-api.json&quot;)}, &#39;Mojo::File&#39; ),
# &quot;schema&quot; =&gt; bless( {
# &quot;data&quot; =&gt; {
# &quot;basePath&quot; =&gt; &quot;/api&quot;,
# &quot;definitions&quot; =&gt; {
# &quot;Connection&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for this connection&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Name for this connection&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Actual connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;queued&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:\@irc.perl.org?nick=superman (Note: Without password)&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Wanted connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;connection_id&quot;,
# &quot;url&quot;
# ]
# },
# &quot;DefaultResponse&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;errors&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;path&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;errors&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;Dialog&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the connection this dialog is part of&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the dialog&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;last_active&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Name of the room or person&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;topic&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The subjec/topic for this room&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;unread&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Number of unread messages&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;connection_id&quot;,
# &quot;dialog_id&quot;,
# &quot;last_read&quot;,
# &quot;name&quot;,
# &quot;unread&quot;
# ]
# },
# &quot;Error&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;errors&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Human readable description of the error&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;path&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;JSON pointer to the input data where the error occur&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;
# ]
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# }
# },
# &quot;Message&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;from&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Identifier for who sent this message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;ts&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T13:49:37Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;,
# &quot;from&quot;,
# &quot;ts&quot;
# ]
# },
# &quot;Notification&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the connection this notification came from&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Dialog ID&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;from&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Identifier for who sent this message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;ts&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T13:49:37Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;,
# &quot;from&quot;,
# &quot;ts&quot;
# ]
# },
# &quot;ServerSettings&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;minLength&quot; =&gt; 3,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;default_connection&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;open_to_public&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;organization_name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;organization_url&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# }
# },
# &quot;Success&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Human readable description&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# }
# },
# &quot;User&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connections&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;dialogs&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Dialog&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique email identifying a user in Convos&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;highlight_keywords&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Extra keywords to highlight on&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;registered&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T10:47:31Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;unread&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Number of unread notifications&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;unread&quot;
# ]
# },
# &quot;password&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User password&quot;,
# &quot;minLength&quot; =&gt; 10,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;host&quot; =&gt; &quot;demo.convos.by&quot;,
# &quot;info&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;name&quot; =&gt; &quot;Convos&quot;,
# &quot;url&quot; =&gt; &quot;https://github.com/Nordaaker/convos&quot;
# },
# &quot;description&quot; =&gt; &quot;This document describes the API for Convos, a multiuser persistent IRC proxy with web interface.&quot;,
# &quot;license&quot; =&gt; {
# &quot;name&quot; =&gt; &quot;Artistic License version 2.0&quot;,
# &quot;url&quot; =&gt; &quot;http://opensource.org/licenses/Artistic-2.0&quot;
# },
# &quot;termsOfService&quot; =&gt; &quot;SSL (HTTPS) is highly suggested, since login credentials and session cookies are transmitted over this API.&quot;,
# &quot;title&quot; =&gt; &quot;Convos API specification&quot;,
# &quot;version&quot; =&gt; &quot;3.8.0&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique connection identifier&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;connection_id&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;&quot;,
# &quot;description&quot; =&gt; &quot;The name of the person or room&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;dialog_id&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;,
# &quot;x-mojo-placeholder&quot; =&gt; &quot;#&quot;
# },
# &quot;email_in_path&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;email&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;,
# &quot;x-mojo-placeholder&quot; =&gt; &quot;#&quot;
# },
# &quot;ident&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email or server identity&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;ident&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;paths&quot; =&gt; {
# &quot;/connection/{connection_id}&quot; =&gt; {
# &quot;delete&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;removeConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Remove a connection.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Delete a connection and all assosiated data.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#remove&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Update a connection.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update a connection.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#update&quot;
# }
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;dialogMessages&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[2],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[3],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[4],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[5]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;end&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Indicates if historic messages can be received.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Message&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of messages.\n\nNote: this resource require the user to be authenticated first.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#messages&quot;
# }
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;setDialogLastRead&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Set &#39;last_read&#39; for a dialog.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#last_read&quot;
# }
# },
# &quot;/connection/{connection_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;connectionMessages&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[2],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[3],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[4]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;end&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Indicates if historic messages can be received.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Message&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of messages.\n\nNote: this resource require the user to be authenticated first.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#messages&quot;
# }
# },
# &quot;/connection/{connection_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;setConnectionLastRead&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Set &#39;last_read&#39; for a connection dialog.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#last_read&quot;
# }
# },
# &quot;/connections&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;listConnections&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of connections.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connections&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get all the connections for a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#list&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;createConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connections&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection information.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Add a connection.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#create&quot;
# }
# },
# &quot;/dialogs&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;listDialogs&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;dialogs&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Dialog&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of all dialogs.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#list&quot;
# }
# },
# &quot;/embed&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;embed&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/embed&quot;}{&quot;get&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Information about resource.&quot;
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get information from a URL&quot;,
# &quot;tags&quot; =&gt; [],
# &quot;x-mojo-to&quot; =&gt; &quot;url#info&quot;
# }
# },
# &quot;/file&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;uploadFile&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[2]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully uploaded.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;files&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;ext&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;filename&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;id&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;saved&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uid&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;ext&quot;,
# &quot;filename&quot;,
# &quot;id&quot;,
# &quot;saved&quot;,
# &quot;uid&quot;,
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Upload file.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;files&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;files#upload&quot;
# }
# },
# &quot;/file/:uid/:fid&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getFile&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;File found and served.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Retrieve uploaded file.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;files&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;files#get&quot;
# }
# },
# &quot;/notifications&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A notification is added once your name is mentioned in a chat.&quot;,
# &quot;operationId&quot; =&gt; &quot;notificationMessages&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of notifications.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Notification&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get list of notications.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;chat&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;notifications#messages&quot;
# }
# },
# &quot;/notifications/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;TODO: Notification count vs red/green toggling of a single notification.&quot;,
# &quot;operationId&quot; =&gt; &quot;readNotifications&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Mark notications as read.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;chat&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;notifications#read&quot;
# }
# },
# &quot;/settings&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getSettings&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;ServerSettings.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get settings for Convos.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;settings&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;admin#settings_get&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateSettings&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/settings&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update settings for Convos.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;settings&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;admin#settings_update&quot;
# }
# },
# &quot;/user&quot; =&gt; {
# &quot;delete&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;deleteUser&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully deleted.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Delete a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#delete&quot;
# },
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[2]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get user data.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#get&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update an existing user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#update&quot;
# }
# },
# &quot;/user/login&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;loginUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Log in a user based on email and password.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#login&quot;
# }
# },
# &quot;/user/logout&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;This resource will delete any sessions cookies that might be stored in the client.&quot;,
# &quot;operationId&quot; =&gt; &quot;logoutUser&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully logged out.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Logout a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#logout&quot;
# }
# },
# &quot;/user/register&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;registerUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Register a new user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#register&quot;
# }
# },
# &quot;/user/{email}/invite&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;inviteUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;existing&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;expires&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# }
# },
# &quot;summary&quot; =&gt; &quot;Generate invite link for an existing / new user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#generate_invite_link&quot;
# }
# }
# },
# &quot;schemes&quot; =&gt; [
# &quot;http&quot;
# ],
# &quot;swagger&quot; =&gt; &quot;2.0&quot;
# }
# }, &#39;Mojo::JSON::Pointer&#39; ),
# &quot;schemas&quot; =&gt; {
# &quot;/Users/marcus/Source/convos/public/convos-api.json&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;},
# &quot;http://json-schema.org/draft-04/schema&quot; =&gt; {
# &quot;\$schema&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;default&quot; =&gt; {},
# &quot;definitions&quot; =&gt; {
# &quot;positiveInteger&quot; =&gt; {
# &quot;minimum&quot; =&gt; 0,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# &quot;positiveIntegerDefault0&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# {
# &quot;default&quot; =&gt; 0
# }
# ]
# },
# &quot;schemaArray&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;simpleTypes&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;array&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;null&quot;,
# &quot;number&quot;,
# &quot;object&quot;,
# &quot;string&quot;
# ]
# },
# &quot;stringArray&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;dependencies&quot; =&gt; {
# &quot;exclusiveMaximum&quot; =&gt; [
# &quot;maximum&quot;
# ],
# &quot;exclusiveMinimum&quot; =&gt; [
# &quot;minimum&quot;
# ]
# },
# &quot;description&quot; =&gt; &quot;Core schema meta-schema&quot;,
# &quot;id&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;properties&quot; =&gt; {
# &quot;\$schema&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;additionalItems&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;allOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;anyOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;definitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;dependencies&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/stringArray&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;default&quot; =&gt; bless( do{\(my $o = 0)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;id&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maxProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;exclusiveMinimum&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;minimum&quot; =&gt; 0,
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;not&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;oneOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;regex&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;patternProperties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;properties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/simpleTypes&quot;
# },
# {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/simpleTypes&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# ]
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;http://swagger.io/v2/schema.json&quot; =&gt; {
# &quot;\$schema&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;definitions&quot; =&gt; {
# &quot;apiKeySecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;header&quot;,
# &quot;query&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;apiKey&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;name&quot;,
# &quot;in&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;basicAuthenticationSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;basic&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;bodyParameter&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;body&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;,
# &quot;in&quot;,
# &quot;schema&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;csv&quot;,
# &quot;enum&quot; =&gt; [
# &quot;csv&quot;,
# &quot;ssv&quot;,
# &quot;tsv&quot;,
# &quot;pipes&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;collectionFormatWithMulti&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;csv&quot;,
# &quot;enum&quot; =&gt; [
# &quot;csv&quot;,
# &quot;ssv&quot;,
# &quot;tsv&quot;,
# &quot;pipes&quot;,
# &quot;multi&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;contact&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Contact information for the owners of the API.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The email address of the contact person/organization.&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The identifying name of the contact person/organization.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The URL pointing to the contact information.&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;definitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON objects describing the schemas being consumed and produced by the API.&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/enum&quot;
# },
# &quot;examples&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;information about external documentation&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;fileSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;A deterministic version of a JSON Schema object.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;example&quot; =&gt; {},
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;readOnly&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;file&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;formDataParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;allowEmptyValue&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;allows sending a parameter by name only or with an empty value.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormatWithMulti&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;formData&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;,
# &quot;file&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;header&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;integer&quot;,
# &quot;boolean&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;headerParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;header&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;headers&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/header&quot;
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;info&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;General information about the API.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/contact&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A longer description of the API. Should be different from the title. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;license&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/license&quot;
# },
# &quot;termsOfService&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The terms of service for the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique and precise title of the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;version&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A semantic version number of the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;version&quot;,
# &quot;title&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;jsonReference&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;\$ref&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;license&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the license type. It&#39;s encouraged to use an OSI compatible license.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The URL pointing to the license.&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/maximum&quot;
# },
# &quot;mediaTypeList&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mimeType&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;mimeType&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The MIME type of the HTTP message.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/multipleOf&quot;
# },
# &quot;nonBodyParameter&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/headerParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/formDataParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/queryParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pathParameterSubSchema&quot;
# }
# ],
# &quot;required&quot; =&gt; [
# &quot;name&quot;,
# &quot;in&quot;,
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2AccessCodeSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;authorizationUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;accessCode&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;authorizationUrl&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2ApplicationSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;application&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2ImplicitSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;authorizationUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;implicit&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;authorizationUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2PasswordSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2Scopes&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;operation&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;consumes&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can consume.&quot;
# },
# &quot;deprecated&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A longer description of the operation, GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;operationId&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique identifier of the operation.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parametersList&quot;
# },
# &quot;produces&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can produce.&quot;
# },
# &quot;responses&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responses&quot;
# },
# &quot;schemes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemesList&quot;
# },
# &quot;security&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/security&quot;
# },
# &quot;summary&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief summary of the operation.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;tags&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;required&quot; =&gt; [
# &quot;responses&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;parameter&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/bodyParameter&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/nonBodyParameter&quot;
# }
# ]
# },
# &quot;parameterDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameter&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON representations for parameters&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;parametersList&quot; =&gt; {
# &quot;additionalItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;The parameters needed to send a valid API call.&quot;,
# &quot;items&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameter&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/jsonReference&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;pathItem&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;delete&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;get&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;head&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;options&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parametersList&quot;
# },
# &quot;patch&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;put&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;pathParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;path&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;enum&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# ],
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;required&quot;
# ]
# },
# &quot;paths&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Relative paths to the individual endpoints. They must be relative to the &#39;basePath&#39;.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^/&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pathItem&quot;
# },
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/pattern&quot;
# },
# &quot;primitivesItems&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;integer&quot;,
# &quot;boolean&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;queryParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;allowEmptyValue&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;allows sending a parameter by name only or with an empty value.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormatWithMulti&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;query&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;response&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;examples&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/examples&quot;
# },
# &quot;headers&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/headers&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/fileSchema&quot;
# }
# ]
# }
# },
# &quot;required&quot; =&gt; [
# &quot;description&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;responseDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/response&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON representations for parameters&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;responseValue&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/response&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/jsonReference&quot;
# }
# ]
# },
# &quot;responses&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Response objects names can either be any valid HTTP status code or &#39;default&#39;.&quot;,
# &quot;minProperties&quot; =&gt; 1,
# &quot;not&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;patternProperties&quot; =&gt; {
# &quot;^([0-9]{3})\$|^(default)\$&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responseValue&quot;
# },
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;A deterministic version of a JSON Schema object.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;allOf&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;discriminator&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/enum&quot;
# },
# &quot;example&quot; =&gt; {},
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/pattern&quot;
# },
# &quot;properties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;readOnly&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/type&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/uniqueItems&quot;
# },
# &quot;xml&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/xml&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;schemesList&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The transfer protocol of the API.&quot;,
# &quot;items&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;http&quot;,
# &quot;https&quot;,
# &quot;ws&quot;,
# &quot;wss&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;security&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/securityRequirement&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;securityDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/basicAuthenticationSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/apiKeySecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2ImplicitSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2PasswordSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2ApplicationSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2AccessCodeSecurity&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;securityRequirement&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;tag&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/uniqueItems&quot;
# },
# &quot;vendorExtension&quot; =&gt; {
# &quot;additionalItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;description&quot; =&gt; &quot;Any property starting with x- is valid.&quot;
# },
# &quot;xml&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;attribute&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;namespace&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;prefix&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wrapped&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;id&quot; =&gt; &quot;http://swagger.io/v2/schema.json#&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;basePath&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The base path to the API. Example: &#39;/api&#39;.&quot;,
# &quot;pattern&quot; =&gt; &quot;^/&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;consumes&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types accepted by the API.&quot;
# },
# &quot;definitions&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/definitions&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;host&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The host (name or ip) of the API. Example: &#39;swagger.io&#39;&quot;,
# &quot;pattern&quot; =&gt; &quot;^[^{}/ :\\\\]+(?::\\d+)?\$&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;info&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/info&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameterDefinitions&quot;
# },
# &quot;paths&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/paths&quot;
# },
# &quot;produces&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can produce.&quot;
# },
# &quot;responses&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responseDefinitions&quot;
# },
# &quot;schemes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemesList&quot;
# },
# &quot;security&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/security&quot;
# },
# &quot;securityDefinitions&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/securityDefinitions&quot;
# },
# &quot;swagger&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The Swagger version of this document.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;2.0&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;tags&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/tag&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;required&quot; =&gt; [
# &quot;swagger&quot;,
# &quot;info&quot;,
# &quot;paths&quot;
# ],
# &quot;title&quot; =&gt; &quot;A JSON Schema for Swagger 2.0 API.&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;version&quot; =&gt; 2
# }, &#39;JSON::Validator::OpenAPI::Mojolicious&#39; )
# }, &#39;Mojolicious::Plugin::OpenAPI&#39; )
# ]
# ],
# &quot;openapi_cors_allowed_origins&quot; =&gt; [],
# &quot;openapi_cors_default_exchange_callback&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi_cors_default_max_age&quot; =&gt; 1800
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Session:</td>
# <td class="striped value wide"><pre>{}
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Version:</td>
# <td class="striped value wide"><pre>1.1</pre></td>
# </tr>
#
# <tr>
# <td class="key">Accept-Encoding:</td>
# <td class="striped value wide"><pre>gzip</pre></td>
# </tr>
#
# <tr>
# <td class="key">Content-Length:</td>
# <td class="striped value wide"><pre>0</pre></td>
# </tr>
#
# <tr>
# <td class="key">Host:</td>
# <td class="striped value wide"><pre>127.0.0.1:50014</pre></td>
# </tr>
#
# <tr>
# <td class="key">User-Agent:</td>
# <td class="striped value wide"><pre>Mojolicious (Perl)</pre></td>
# </tr>
#
# </table>
# </div>
# <div id="more" class="box infobox more spaced">
# <div id="infos">
# <table>
# <tr>
# <td class="key">Perl:</td>
# <td class="striped value wide"><pre>v5.30.0 (darwin)</pre></td>
# </tr>
#
# <tr>
# <td class="key">Mojolicious:</td>
# <td class="striped value wide"><pre>8.29 (Supervillain)</pre></td>
# </tr>
#
# <tr>
# <td class="key">Home:</td>
# <td class="striped value wide"><pre>/Users/marcus/Source/convos</pre></td>
# </tr>
#
# <tr>
# <td class="key">Template paths:</td>
# <td class="striped value wide"><pre>[
# &quot;/Users/marcus/Source/convos/templates&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Template classes:</td>
# <td class="striped value wide"><pre>[
# &quot;main&quot;,
# &quot;Convos&quot;,
# &quot;Mojolicious::Plugin::OpenAPI::SpecRenderer&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Static paths:</td>
# <td class="striped value wide"><pre>[
# &quot;/Users/marcus/Source/convos/public&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Static classes:</td>
# <td class="striped value wide"><pre>[
# &quot;main&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Include:</td>
# <td class="striped value wide"><pre>[
# &quot;.&quot;,
# &quot;/Users/marcus/Source/convos/lib&quot;,
# &quot;/Users/marcus/Source/convos/script/../lib&quot;,
# &quot;/Users/marcus/Source/convos/script/../local/lib/perl5/darwin-2level&quot;,
# &quot;/Users/marcus/Source/convos/script/../local/lib/perl5&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/site_perl/5.30.0/darwin-2level&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/site_perl/5.30.0&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/5.30.0/darwin-2level&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/5.30.0&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Config:</td>
# <td class="striped value wide"><pre>{
# &quot;backend&quot; =&gt; &quot;Convos::Core::Backend::File&quot;,
# &quot;home&quot; =&gt; &quot;/Users/marcus/Source/convos/t/../local/test-web-base-url-t&quot;,
# &quot;log_file&quot; =&gt; undef
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Moniker:</td>
# <td class="striped value wide"><pre>convos</pre></td>
# </tr>
#
# <tr>
# <td class="key">Name:</td>
# <td class="striped value wide"><pre>t/web-base-url.t</pre></td>
# </tr>
#
# <tr>
# <td class="key">Executable:</td>
# <td class="striped value wide"><pre>/Users/marcus/.dotfiles/link/plenv/versions/5.30.0/bin/perl5.30.0</pre></td>
# </tr>
#
# <tr>
# <td class="key">PID:</td>
# <td class="striped value wide"><pre>35213</pre></td>
# </tr>
#
# <tr>
# <td class="key">Time:</td>
# <td class="striped value wide"><pre>Sun Feb 2 10:55:58 2020</pre></td>
# </tr>
#
# </table>
# </div>
# <div class="tap">tap for more</div>
# </div>
# <div id="log" class="box infobox spaced">
# <table>
# <tr>
# <td class="striped value wide">
# <pre>[2020-02-02 10:55:58.61891] [35213] [error] [2228efc2] Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
#
# </pre>
# </td>
# </tr>
# </table>
# </div>
# </div>
# <div id="footer">
# <a href="https://mojolicious.org">
# <picture>
# <img src="/mojo/logo-black.png"
# srcset="/mojo/logo-black-2x.png 2x"
# alt="Mojolicious logo">
# </picture>
# </a> </div>
# </body>
# </html>
# '
# expected: '/foo'
[2020-02-02 10:55:58.66461] [35213] [error] [0df9d4f0] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-base-url.t line 26.
# got: '500'
# expected: '200'
# Failed test 'exact match for content'
# at t/web-base-url.t line 26.
# got: '<!DOCTYPE html>
# <!-- Request ID: 0df9d4f0 -->
# <html>
# <head>
# <title>Server error (development mode)</title>
# <meta http-equiv="Pragma" content="no-cache">
# <meta http-equiv="Expires" content="-1">
# <script src="/mojo/jquery/jquery.js"></script>
# <script src="/mojo/prettify/run_prettify.js"></script>
# <link href="/mojo/prettify/prettify-mojo-dark.css" rel="stylesheet">
# <style>
# a img {
# border: 0;
# }
# body {
# background: url(/mojo/pinstripe-light.png);
# color: #445555;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: normal;
# line-height: 1.5em;
# margin: 0;
# }
# :not(pre) > code {
# background-color: #eef9ff;
# border: solid #cce4ff 1px;
# border-radius: 5px;
# color: #333;
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# padding: 0.4em;
# }
# h1 {
# color: #2a2a2a;
# font-size: 1.5em;
# margin: 0;
# }
# pre {
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# margin: 0;
# white-space: pre-wrap;
# }
# pre > code {
# display: block;
# font: 1.0em Consolas, Menlo, Monaco, Courier, monospace;
# margin-bottom: 0.7em;
# margin-top: 0.7em;
# }
# table {
# border-collapse: collapse;
# width: 100%;
# }
# td { padding: 0.5em }
# .box {
# background-color: #fff;
# border: 1px solid #c1c1c1;
# overflow: hidden;
# padding: 1em;
# }
# .code {
# background-color: #1a1a1a;
# background: url(/mojo/pinstripe-dark.png);
# color: #eee;
# text-shadow: #333 0 1px 0;
# }
# .important {
# background-color: rgba(47, 48, 50, .75);
# }
# .infobox {
# color: #333;
# }
# .infobox tr:nth-child(odd) .value {
# background-color: #ddeeff;
# }
# .infobox tr:nth-child(even) .value {
# background-color: #eef9ff;
# }
# .key {
# text-align: right;
# }
# .more table {
# margin-bottom: 1em;
# }
# .spaced {
# margin-left: 5em;
# margin-right: 5em;
# }
# .striped {
# border-top: solid #cce4ff 1px;
# }
# .tap {
# font: 0.5em Verdana, sans-serif;
# text-align: center;
# }
# .value {
# padding-left: 1em;
# }
# .wide {
# width: 100%;
# }
# #error {
# font: 1.5em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: 300;
# margin: 0;
# text-shadow: #333 0 1px 0;
# }
# #footer {
# padding-top: 0.5em;
# text-align: center;
# }
# #nothing {
# border-bottom: 0;
# padding-top: 20px;
# }
# #showcase {
# border-bottom: 0;
# border-top: 0;
# }
# #showcase table {
# margin-top: 1em;
# }
# #showcase td {
# padding-top: 0;
# padding-bottom: 0;
# }
# #showcase .key {
# padding-right: 0;
# }
# #log {
# border-radius: 5px;
# margin-top: 1em;
# }
# #log table {
# margin: 0;
# }
# #mojobar {
# background-color: #1a1a1a;
# background: -webkit-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: -moz-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: linear-gradient(top, #2a2a2a 0%, #000 100%);
# box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
# height: 46px;
# overflow: hidden;
# width: 100%;
# z-index: 1000;
# }
# #mojobar-brand {
# display: inline-block;
# padding-left: 50px;
# padding-top: 4px;
# }
# #mojobar-links {
# display: inline;
# float: right;
# height: 60px;
# margin-top: 0.8em;
# padding-right: 50px;
# }
# #mojobar-links a {
# color: #bbb;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# margin-left: 0.5em;
# text-decoration: none;
# transition: all 200ms ease-in-out;
# }
# #mojobar-links a:hover {
# color: #fff;
# }
# #mojobar-links input {
# background-color: #3a3a3a;
# border: 1px solid rgba(0, 0, 0, 0.1);
# border-radius: 3px;
# color: #eee;
# display: inline;
# margin-left: 1em;
# padding: 4px;
# transition: all 0.15s;
# }
# #mojobar-links input:focus {
# background-color: #fff;
# color: #111;
# outline: 0;
# }
# #mojobar-links form {
# display: inline;
# }
# #more, #trace {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# }
# #more .tap, #trace .tap {
# text-shadow: #ddd 0 1px 0;
# }
# #request {
# border-bottom: 0;
# border-top-left-radius: 5px;
# border-top-right-radius: 5px;
# margin-top: 1em;
# }
# #routes {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# padding-top: 30px;
# }
# #trace {
# border-top: 0;
# }
# #wrapperlicious {
# max-width: 1000px;
# margin: 0 auto;
# }
# </style>
# </head>
# <body>
# <div id="mojobar">
# <a href="https://mojolicious.org" id="mojobar-brand">
# <picture>
# <img src="/mojo/logo-white.png"
# srcset="/mojo/logo-white-2x.png 2x">
# </picture>
# </a> <div id="mojobar-links">
# <a href="https://mojolicious.org/perldoc">Documentation</a>
# <a href="https://kiwiirc.com/nextclient/#irc://irc.freenode.net/mojo?nick=guest-?">Chat</a>
# <a href="https://github.com/mojolicious/mojo/wiki">Wiki</a>
# <a href="https://github.com/mojolicious/mojo">GitHub</a>
# <a href="https://metacpan.org/release/Mojolicious/">CPAN</a>
# <a href="https://groups.google.com/group/mojolicious">MailingList</a>
# <a href="https://twitter.com/perlmojo">Twitter</a>
# <form action="https://www.google.com/cse" target="_blank">
# <input name="cx" type="hidden" value="014527573091551588235:pwfplkjpgbi">
# <input name="ie" type="hidden" value="UTF-8">
# <input name="q" placeholder="Search" type="search">
# </form>
# </div>
# </div>
# <script>
# function mojoDrawer(handle, drawer) {
# $(handle).on('click', function () {
# $(drawer).slideToggle('slow');
# var text = $(handle + ' div.tap').text();
# text = text == "tap for more" ? "tap for less" : "tap for more";
# $(handle + ' div.tap').text(text);
# });
# $(drawer).toggle();
# }
# $(function () {
# mojoDrawer('#trace', '#frames');
# mojoDrawer('#more', '#infos');
# });
# </script>
# <div id="wrapperlicious">
# <div id="nothing" class="box spaced"></div>
# <div id="showcase" class="box code spaced">
# <pre id="error">Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# </pre>
# <div id="context" class="more">
# <table>
# <tr>
# <td class="key">28</td>
# <td class="value wide">
# <pre><code class="prettyprint">sub _asset_version {</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">29</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $app = shift-&gt;app;</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">30</td>
# <td class="value wide">
# <pre><code class="prettyprint"> return $app-&gt;config-&gt;{asset_version} if $app-&gt;config-&gt;{asset_version};</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">31</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">32</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $mode = $app-&gt;mode eq &#39;development&#39; ? &#39;development&#39; : &#39;production&#39;;</code></pre>
# </td>
# </tr>
# <tr class="important">
# <td class="key">33</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my @paths = (</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">34</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;static-&gt;file(&quot;asset/webpack.$mode.html&quot;)-&gt;path,</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">35</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;renderer-&gt;template_path({template =&gt; &#39;sw&#39;, format =&gt; &#39;js&#39;, handler =&gt; &#39;ep&#39;}),</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">36</td>
# <td class="value wide">
# <pre><code class="prettyprint"> );</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">37</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">38</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $version = 0;</code></pre>
# </td>
# </tr>
# </table>
# </div>
# </div>
# <div id="trace" class="box spaced">
# <div id="frames" class="infobox more">
# <table>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos.pm", line 112, in "Convos"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 23, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 112, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 141, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 18, in "Mojolicious::Plugins"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 146, in "Mojolicious"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server.pm", line 68, in "Mojo::Server"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 104, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Transaction/HTTP.pm", line 60, in "Mojo::Transaction::HTTP"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 219, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 200, in "Mojo::Server::Daemon"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 110, in "Mojo::IOLoop::Stream"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 58, in "Mojo::IOLoop::Stream"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 52, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "t/web-base-url.t", line 26, in "main"</pre>
# </td>
# </tr>
# </table>
# </div>
# <div class="tap">tap for more</div>
# </div>
# <div id="request" class="box infobox spaced">
# <table>
# <tr>
# <td class="key">Request ID:</td>
# <td class="striped value wide"><pre>0df9d4f0</pre></td>
# </tr>
#
# <tr>
# <td class="key">Method:</td>
# <td class="striped value wide"><pre>GET</pre></td>
# </tr>
#
# <tr>
# <td class="key">URL:</td>
# <td class="striped value wide"><pre>/t/request-base?x=1</pre></td>
# </tr>
#
# <tr>
# <td class="key">Base URL:</td>
# <td class="striped value wide"><pre>http://127.0.0.1:50014</pre></td>
# </tr>
#
# <tr>
# <td class="key">Parameters:</td>
# <td class="striped value wide"><pre>{
# &quot;x&quot; =&gt; 1
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Stash:</td>
# <td class="striped value wide"><pre>{
# &quot;debug&quot; =&gt; [
# &quot;info&quot;
# ],
# &quot;openapi.base_paths&quot; =&gt; [
# [
# &quot;/api&quot;,
# bless( {
# &quot;default_response_codes&quot; =&gt; [
# 400,
# 401,
# 404,
# 500,
# 501
# ],
# &quot;default_response_name&quot; =&gt; &quot;DefaultResponse&quot;,
# &quot;log_level&quot; =&gt; &quot;warn&quot;,
# &quot;parameters_for&quot; =&gt; {
# &quot;/connection/{connection_id}&quot; =&gt; {
# &quot;delete&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ]
# },
# &quot;/connections&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/dialogs&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/embed&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;URL to resource&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;url&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/file&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;file&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;type&quot; =&gt; &quot;file&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;id&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;write_only&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ]
# },
# &quot;/file/:uid/:fid&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;fid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;uid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/notifications&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/notifications/read&quot; =&gt; {
# &quot;post&quot; =&gt; []
# },
# &quot;/settings&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# }
# ]
# },
# &quot;/user&quot; =&gt; {
# &quot;delete&quot; =&gt; [],
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;Retrieve connection list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;connections&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve dialog list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;dialogs&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve notifications list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;notifications&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;highlight_keywords&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Extra keywords to highlight on&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/login&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User password&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/logout&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/user/register&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;exp&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Expire time for a token&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# },
# &quot;token&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Checksum generated by inviteUser&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/{email}/invite&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/email_in_path&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Role to give the user.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;role&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# }
# },
# &quot;route&quot; =&gt; bless( {
# &quot;children&quot; =&gt; [
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;types&quot; =&gt; {
# &quot;num&quot; =&gt; qr/[0-9]+/
# }
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;upload&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;delete&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;info&quot;,
# &quot;controller&quot; =&gt; &quot;url&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/embed&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/dialogs&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_get&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_update&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;login&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/login&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;logout&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/logout&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;createConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;create&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;register&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/register&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file/:uid/:fid&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;read&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;generate_invite_link&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/{email}/invite&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;remove&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;connectionMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setDialogLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;dialogMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;connectionMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setDialogLastRead_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;dialogMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;has_websocket&quot; =&gt; 0,
# &quot;name&quot; =&gt; &quot;api&quot;,
# &quot;parent&quot; =&gt; bless( {
# &quot;children&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;index&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;load_user&quot; =&gt; 1,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;docsdoc_name&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;docs&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;doc_name&quot; =&gt; &quot;&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/docs&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;doc_name&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/docs/*doc_name&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;register&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;register_html&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;login&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logout&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;assetbrowserconfighash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; [
# &quot;xml&quot;
# ]
# },
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;asset/browserconfig&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset/browserconfig.&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/browserconfig.&lt;:hash&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;assetsitehash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; [
# &quot;webmanifest&quot;
# ]
# },
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;asset/site&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset/site.&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/site.&lt;:hash&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;err500&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/err/500&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/err/500&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;errcode&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;err&quot;,
# &quot;controller&quot; =&gt; &quot;url&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/err&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;code&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/err/:code&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;sw&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;js&quot;
# },
# &quot;defaults&quot; =&gt; {},
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/sw&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/sw&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;events&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;start&quot;,
# &quot;controller&quot; =&gt; &quot;events&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/events&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/events&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ],
# &quot;websocket&quot; =&gt; 1
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;help&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/help&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/help&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;chatrest&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;rest&quot; =&gt; &quot;&quot;,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/chat&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;rest&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/chat/*rest&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;settingsrest&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;rest&quot; =&gt; &quot;&quot;,
# &quot;template&quot; =&gt; &quot;index&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;rest&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings/*rest&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;inline&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;redirect_if_not_logged_in&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes::Pattern&#39; )
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;fileuidfid&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;pasteemail_hashfile_hash&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/paste&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email_hash&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;file_hash&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/paste/:email_hash/:file_hash&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;webpack.asset&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {},
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/asset&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;name&quot;,
# &quot;wildcard&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/asset/*name&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;HEAD&quot;,
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;tbaseurl&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/t/base-url&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/t/base-url&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;trequestbase&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/t/request-base&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/t/request-base&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; )
# ],
# &quot;conditions&quot; =&gt; {
# &quot;agent&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;headers&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;host&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;hidden&quot; =&gt; [
# &quot;attr&quot;,
# &quot;has&quot;,
# &quot;new&quot;,
# &quot;tap&quot;,
# &quot;app&quot;,
# &quot;cookie&quot;,
# &quot;every_cookie&quot;,
# &quot;every_param&quot;,
# &quot;every_signed_cookie&quot;,
# &quot;finish&quot;,
# &quot;helpers&quot;,
# &quot;match&quot;,
# &quot;on&quot;,
# &quot;param&quot;,
# &quot;render&quot;,
# &quot;render_later&quot;,
# &quot;render_maybe&quot;,
# &quot;render_to_string&quot;,
# &quot;rendered&quot;,
# &quot;req&quot;,
# &quot;res&quot;,
# &quot;send&quot;,
# &quot;session&quot;,
# &quot;signed_cookie&quot;,
# &quot;stash&quot;,
# &quot;tx&quot;,
# &quot;url_for&quot;,
# &quot;write&quot;,
# &quot;write_chunk&quot;
# ],
# &quot;namespaces&quot; =&gt; [
# &quot;Convos::Controller&quot;
# ],
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;tree&quot; =&gt; [],
# &quot;type_start&quot; =&gt; &quot;:&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;reverse&quot; =&gt; {
# &quot;&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12],
# &quot;api&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;assetbrowserconfighash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[6],
# &quot;assetsitehash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[7],
# &quot;chatrest&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[1],
# &quot;connectionMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[21],
# &quot;connectionMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[39],
# &quot;createConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[12],
# &quot;deleteUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[2],
# &quot;deleteUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[25],
# &quot;dialogMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[23],
# &quot;dialogMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[41],
# &quot;docsdoc_name&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[2],
# &quot;embed&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[5],
# &quot;embed_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[26],
# &quot;err500&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[8],
# &quot;errcode&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[9],
# &quot;events&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[11],
# &quot;fileuidfid&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[13],
# &quot;getFile&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[15],
# &quot;getFile_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[34],
# &quot;getSettings&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[7],
# &quot;getSettings_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[28],
# &quot;getUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[3],
# &quot;help&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[0],
# &quot;index&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[1],
# &quot;inviteUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[17],
# &quot;inviteUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[36],
# &quot;listConnections&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[11],
# &quot;listConnections_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[31],
# &quot;listDialogs&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[6],
# &quot;listDialogs_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[27],
# &quot;login&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[4],
# &quot;loginUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[9],
# &quot;loginUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[29],
# &quot;logout&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[5],
# &quot;logoutUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[10],
# &quot;logoutUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[30],
# &quot;notificationMessages&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[13],
# &quot;notificationMessages_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[32],
# &quot;pasteemail_hashfile_hash&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[14],
# &quot;readNotifications&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[16],
# &quot;readNotifications_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[35],
# &quot;register&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[3],
# &quot;registerUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[14],
# &quot;registerUser_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[33],
# &quot;removeConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[18],
# &quot;removeConnection_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[37],
# &quot;setConnectionLastRead&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[20],
# &quot;setConnectionLastRead_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[38],
# &quot;setDialogLastRead&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[22],
# &quot;setDialogLastRead_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[40],
# &quot;settingsrest&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[12]{&quot;children&quot;}[2],
# &quot;sw&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[10],
# &quot;tbaseurl&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[16],
# &quot;trequestbase&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[17],
# &quot;updateConnection&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[19],
# &quot;updateSettings&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[8],
# &quot;updateUser&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[4],
# &quot;uploadFile&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[1],
# &quot;uploadFile_openapi_documentation&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[24],
# &quot;webpack.asset&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;parent&quot;}{&quot;children&quot;}[15]
# },
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;}
# }, &#39;Mojolicious::Routes&#39; ),
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;handler&quot; =&gt; &quot;openapi&quot;,
# &quot;openapi.object&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/api&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/api&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; )
# }, &#39;Mojolicious::Routes::Route&#39; ),
# &quot;route_prefix&quot; =&gt; &quot;&quot;,
# &quot;validator&quot; =&gt; bless( {
# &quot;coerce&quot; =&gt; {
# &quot;booleans&quot; =&gt; 1,
# &quot;numbers&quot; =&gt; 1,
# &quot;strings&quot; =&gt; 1
# },
# &quot;root_schema_url&quot; =&gt; bless( do{\(my $o = &quot;/Users/marcus/Source/convos/public/convos-api.json&quot;)}, &#39;Mojo::File&#39; ),
# &quot;schema&quot; =&gt; bless( {
# &quot;data&quot; =&gt; {
# &quot;basePath&quot; =&gt; &quot;/api&quot;,
# &quot;definitions&quot; =&gt; {
# &quot;Connection&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for this connection&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Name for this connection&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Actual connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;queued&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:\@irc.perl.org?nick=superman (Note: Without password)&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Wanted connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;connection_id&quot;,
# &quot;url&quot;
# ]
# },
# &quot;DefaultResponse&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;errors&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;path&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;errors&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;Dialog&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the connection this dialog is part of&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the dialog&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;last_active&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Name of the room or person&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;topic&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The subjec/topic for this room&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;unread&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Number of unread messages&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;connection_id&quot;,
# &quot;dialog_id&quot;,
# &quot;last_read&quot;,
# &quot;name&quot;,
# &quot;unread&quot;
# ]
# },
# &quot;Error&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;errors&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Human readable description of the error&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;path&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;JSON pointer to the input data where the error occur&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;
# ]
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# }
# },
# &quot;Message&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;from&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Identifier for who sent this message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;ts&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T13:49:37Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;,
# &quot;from&quot;,
# &quot;ts&quot;
# ]
# },
# &quot;Notification&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique identifier for the connection this notification came from&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Dialog ID&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;from&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Identifier for who sent this message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The message&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;ts&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T13:49:37Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;message&quot;,
# &quot;from&quot;,
# &quot;ts&quot;
# ]
# },
# &quot;ServerSettings&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;minLength&quot; =&gt; 3,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;default_connection&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;open_to_public&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;organization_name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;organization_url&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# }
# },
# &quot;Success&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;message&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Human readable description&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# }
# },
# &quot;User&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connections&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;dialogs&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Dialog&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Unique email identifying a user in Convos&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;highlight_keywords&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Extra keywords to highlight on&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;registered&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: 2015-09-06T10:47:31Z&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;unread&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Number of unread notifications&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;unread&quot;
# ]
# },
# &quot;password&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User password&quot;,
# &quot;minLength&quot; =&gt; 10,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;host&quot; =&gt; &quot;demo.convos.by&quot;,
# &quot;info&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;name&quot; =&gt; &quot;Convos&quot;,
# &quot;url&quot; =&gt; &quot;https://github.com/Nordaaker/convos&quot;
# },
# &quot;description&quot; =&gt; &quot;This document describes the API for Convos, a multiuser persistent IRC proxy with web interface.&quot;,
# &quot;license&quot; =&gt; {
# &quot;name&quot; =&gt; &quot;Artistic License version 2.0&quot;,
# &quot;url&quot; =&gt; &quot;http://opensource.org/licenses/Artistic-2.0&quot;
# },
# &quot;termsOfService&quot; =&gt; &quot;SSL (HTTPS) is highly suggested, since login credentials and session cookies are transmitted over this API.&quot;,
# &quot;title&quot; =&gt; &quot;Convos API specification&quot;,
# &quot;version&quot; =&gt; &quot;3.8.0&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;connection_id&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique connection identifier&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;connection_id&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;dialog_id&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;&quot;,
# &quot;description&quot; =&gt; &quot;The name of the person or room&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;dialog_id&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;,
# &quot;x-mojo-placeholder&quot; =&gt; &quot;#&quot;
# },
# &quot;email_in_path&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;email&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;,
# &quot;x-mojo-placeholder&quot; =&gt; &quot;#&quot;
# },
# &quot;ident&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email or server identity&quot;,
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;ident&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;paths&quot; =&gt; {
# &quot;/connection/{connection_id}&quot; =&gt; {
# &quot;delete&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;removeConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Remove a connection.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Delete a connection and all assosiated data.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#remove&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Update a connection.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update a connection.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#update&quot;
# }
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;dialogMessages&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[2],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[3],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[4],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}[5]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;end&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Indicates if historic messages can be received.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Message&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of messages.\n\nNote: this resource require the user to be authenticated first.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#messages&quot;
# }
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;setDialogLastRead&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Set &#39;last_read&#39; for a dialog.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#last_read&quot;
# }
# },
# &quot;/connection/{connection_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;connectionMessages&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[2],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[3],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}[4]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;end&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Indicates if historic messages can be received.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Message&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/messages&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of messages.\n\nNote: this resource require the user to be authenticated first.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#messages&quot;
# }
# },
# &quot;/connection/{connection_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;setConnectionLastRead&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;last_read&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connection/{connection_id}/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Set &#39;last_read&#39; for a connection dialog.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#last_read&quot;
# }
# },
# &quot;/connections&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;listConnections&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of connections.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;connections&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get all the connections for a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#list&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;createConnection&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connections&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection information.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Connection&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/connections&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Add a connection.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;connection&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;connection#create&quot;
# }
# },
# &quot;/dialogs&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;listDialogs&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of messages.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;dialogs&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Dialog&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/dialogs&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Internal server error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get a list of all dialogs.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;dialog&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;dialog#list&quot;
# }
# },
# &quot;/embed&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;embed&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/embed&quot;}{&quot;get&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Information about resource.&quot;
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/embed&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get information from a URL&quot;,
# &quot;tags&quot; =&gt; [],
# &quot;x-mojo-to&quot; =&gt; &quot;url#info&quot;
# }
# },
# &quot;/file&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;uploadFile&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file&quot;}{&quot;post&quot;}[2]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully uploaded.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;files&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;ext&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;filename&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;id&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;saved&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uid&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;ext&quot;,
# &quot;filename&quot;,
# &quot;id&quot;,
# &quot;saved&quot;,
# &quot;uid&quot;,
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Upload file.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;files&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;files#upload&quot;
# }
# },
# &quot;/file/:uid/:fid&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getFile&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;File found and served.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/file/:uid/:fid&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Retrieve uploaded file.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;files&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;files#get&quot;
# }
# },
# &quot;/notifications&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A notification is added once your name is mentioned in a chat.&quot;,
# &quot;operationId&quot; =&gt; &quot;notificationMessages&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;List of notifications.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;messages&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Notification&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get list of notications.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;chat&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;notifications#messages&quot;
# }
# },
# &quot;/notifications/read&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;TODO: Notification count vs red/green toggling of a single notification.&quot;,
# &quot;operationId&quot; =&gt; &quot;readNotifications&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successful response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/notifications/read&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Mark notications as read.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;chat&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;notifications#read&quot;
# }
# },
# &quot;/settings&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getSettings&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;ServerSettings.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get settings for Convos.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;settings&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;admin#settings_get&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateSettings&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/settings&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/settings&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update settings for Convos.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;settings&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;admin#settings_update&quot;
# }
# },
# &quot;/user&quot; =&gt; {
# &quot;delete&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;deleteUser&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully deleted.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;delete&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Delete a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#delete&quot;
# },
# &quot;get&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;getUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[1],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;get&quot;}[2]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Get user data.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#get&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;updateUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Update an existing user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#update&quot;
# }
# },
# &quot;/user/login&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;loginUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/login&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Log in a user based on email and password.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#login&quot;
# }
# },
# &quot;/user/logout&quot; =&gt; {
# &quot;get&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;This resource will delete any sessions cookies that might be stored in the client.&quot;,
# &quot;operationId&quot; =&gt; &quot;logoutUser&quot;,
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Successfully logged out.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Success&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/logout&quot;}{&quot;get&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Logout a user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#logout&quot;
# }
# },
# &quot;/user/register&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;registerUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}[0]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/User&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/register&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;default&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Error.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/Error&quot;
# }
# }
# },
# &quot;summary&quot; =&gt; &quot;Register a new user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#register&quot;
# }
# },
# &quot;/user/{email}/invite&quot; =&gt; {
# &quot;post&quot; =&gt; {
# &quot;operationId&quot; =&gt; &quot;inviteUser&quot;,
# &quot;parameters&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}[0],
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}[1]
# ],
# &quot;responses&quot; =&gt; {
# &quot;200&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User profile.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;existing&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;expires&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;400&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/DefaultResponse&quot;
# }
# },
# &quot;401&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;404&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;500&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# },
# &quot;501&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Default response.&quot;,
# &quot;schema&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;}{&quot;paths&quot;}{&quot;/user/{email}/invite&quot;}{&quot;post&quot;}{&quot;responses&quot;}{&quot;400&quot;}{&quot;schema&quot;}
# }
# },
# &quot;summary&quot; =&gt; &quot;Generate invite link for an existing / new user.&quot;,
# &quot;tags&quot; =&gt; [
# &quot;user&quot;
# ],
# &quot;x-mojo-to&quot; =&gt; &quot;user#generate_invite_link&quot;
# }
# }
# },
# &quot;schemes&quot; =&gt; [
# &quot;http&quot;
# ],
# &quot;swagger&quot; =&gt; &quot;2.0&quot;
# }
# }, &#39;Mojo::JSON::Pointer&#39; ),
# &quot;schemas&quot; =&gt; {
# &quot;/Users/marcus/Source/convos/public/convos-api.json&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schema&quot;}{&quot;data&quot;},
# &quot;http://json-schema.org/draft-04/schema&quot; =&gt; {
# &quot;\$schema&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;default&quot; =&gt; {},
# &quot;definitions&quot; =&gt; {
# &quot;positiveInteger&quot; =&gt; {
# &quot;minimum&quot; =&gt; 0,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# &quot;positiveIntegerDefault0&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# {
# &quot;default&quot; =&gt; 0
# }
# ]
# },
# &quot;schemaArray&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;simpleTypes&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;array&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;null&quot;,
# &quot;number&quot;,
# &quot;object&quot;,
# &quot;string&quot;
# ]
# },
# &quot;stringArray&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;dependencies&quot; =&gt; {
# &quot;exclusiveMaximum&quot; =&gt; [
# &quot;maximum&quot;
# ],
# &quot;exclusiveMinimum&quot; =&gt; [
# &quot;minimum&quot;
# ]
# },
# &quot;description&quot; =&gt; &quot;Core schema meta-schema&quot;,
# &quot;id&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;properties&quot; =&gt; {
# &quot;\$schema&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;additionalItems&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;allOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;anyOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;definitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;dependencies&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/stringArray&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;default&quot; =&gt; bless( do{\(my $o = 0)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;id&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maxProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;exclusiveMinimum&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;minimum&quot; =&gt; 0,
# &quot;type&quot; =&gt; &quot;number&quot;
# },
# &quot;not&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;oneOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemaArray&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;regex&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;patternProperties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;properties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/simpleTypes&quot;
# },
# {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/simpleTypes&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# ]
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;http://swagger.io/v2/schema.json&quot; =&gt; {
# &quot;\$schema&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#&quot;,
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;definitions&quot; =&gt; {
# &quot;apiKeySecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;header&quot;,
# &quot;query&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;apiKey&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;name&quot;,
# &quot;in&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;basicAuthenticationSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;basic&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;bodyParameter&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;body&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;,
# &quot;in&quot;,
# &quot;schema&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;csv&quot;,
# &quot;enum&quot; =&gt; [
# &quot;csv&quot;,
# &quot;ssv&quot;,
# &quot;tsv&quot;,
# &quot;pipes&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;collectionFormatWithMulti&quot; =&gt; {
# &quot;default&quot; =&gt; &quot;csv&quot;,
# &quot;enum&quot; =&gt; [
# &quot;csv&quot;,
# &quot;ssv&quot;,
# &quot;tsv&quot;,
# &quot;pipes&quot;,
# &quot;multi&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;contact&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Contact information for the owners of the API.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The email address of the contact person/organization.&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The identifying name of the contact person/organization.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The URL pointing to the contact information.&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;definitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON objects describing the schemas being consumed and produced by the API.&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/enum&quot;
# },
# &quot;examples&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;information about external documentation&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;fileSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;A deterministic version of a JSON Schema object.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;example&quot; =&gt; {},
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;readOnly&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;file&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;formDataParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;allowEmptyValue&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;allows sending a parameter by name only or with an empty value.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormatWithMulti&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;formData&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;,
# &quot;file&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;header&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;integer&quot;,
# &quot;boolean&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;headerParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;header&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;headers&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/header&quot;
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;info&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;General information about the API.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;contact&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/contact&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A longer description of the API. Should be different from the title. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;license&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/license&quot;
# },
# &quot;termsOfService&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The terms of service for the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique and precise title of the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;version&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A semantic version number of the API.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;version&quot;,
# &quot;title&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;jsonReference&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;\$ref&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;license&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the license type. It&#39;s encouraged to use an OSI compatible license.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The URL pointing to the license.&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/maximum&quot;
# },
# &quot;mediaTypeList&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mimeType&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;mimeType&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The MIME type of the HTTP message.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/multipleOf&quot;
# },
# &quot;nonBodyParameter&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/headerParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/formDataParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/queryParameterSubSchema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pathParameterSubSchema&quot;
# }
# ],
# &quot;required&quot; =&gt; [
# &quot;name&quot;,
# &quot;in&quot;,
# &quot;type&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2AccessCodeSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;authorizationUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;accessCode&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;authorizationUrl&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2ApplicationSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;application&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2ImplicitSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;authorizationUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;implicit&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;authorizationUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2PasswordSecurity&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;flow&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;scopes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2Scopes&quot;
# },
# &quot;tokenUrl&quot; =&gt; {
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;oauth2&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;type&quot;,
# &quot;flow&quot;,
# &quot;tokenUrl&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;oauth2Scopes&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;operation&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;consumes&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can consume.&quot;
# },
# &quot;deprecated&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A longer description of the operation, GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;operationId&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A unique identifier of the operation.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parametersList&quot;
# },
# &quot;produces&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can produce.&quot;
# },
# &quot;responses&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responses&quot;
# },
# &quot;schemes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemesList&quot;
# },
# &quot;security&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/security&quot;
# },
# &quot;summary&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief summary of the operation.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;tags&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;required&quot; =&gt; [
# &quot;responses&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;parameter&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/bodyParameter&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/nonBodyParameter&quot;
# }
# ]
# },
# &quot;parameterDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameter&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON representations for parameters&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;parametersList&quot; =&gt; {
# &quot;additionalItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;The parameters needed to send a valid API call.&quot;,
# &quot;items&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameter&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/jsonReference&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;pathItem&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;delete&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;get&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;head&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;options&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parametersList&quot;
# },
# &quot;patch&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;post&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# },
# &quot;put&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/operation&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;pathParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;path&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;enum&quot; =&gt; [
# $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# ],
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;required&quot;
# ]
# },
# &quot;paths&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Relative paths to the individual endpoints. They must be relative to the &#39;basePath&#39;.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^/&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pathItem&quot;
# },
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/pattern&quot;
# },
# &quot;primitivesItems&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormat&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;integer&quot;,
# &quot;boolean&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;queryParameterSubSchema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;allowEmptyValue&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;allows sending a parameter by name only or with an empty value.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;collectionFormat&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/collectionFormatWithMulti&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/enum&quot;
# },
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/exclusiveMinimum&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;in&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Determines the location of the parameter.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;query&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/primitivesItems&quot;
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxItems&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maxLength&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minItems&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minLength&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/multipleOf&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The name of the parameter.&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/pattern&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Determines whether or not this parameter is required or optional.&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;string&quot;,
# &quot;number&quot;,
# &quot;boolean&quot;,
# &quot;integer&quot;,
# &quot;array&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/uniqueItems&quot;
# }
# }
# },
# &quot;response&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;examples&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/examples&quot;
# },
# &quot;headers&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/headers&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/fileSchema&quot;
# }
# ]
# }
# },
# &quot;required&quot; =&gt; [
# &quot;description&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;responseDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/response&quot;
# },
# &quot;description&quot; =&gt; &quot;One or more JSON representations for parameters&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;responseValue&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/response&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/jsonReference&quot;
# }
# ]
# },
# &quot;responses&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;Response objects names can either be any valid HTTP status code or &#39;default&#39;.&quot;,
# &quot;minProperties&quot; =&gt; 1,
# &quot;not&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;patternProperties&quot; =&gt; {
# &quot;^([0-9]{3})\$|^(default)\$&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responseValue&quot;
# },
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;schema&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;description&quot; =&gt; &quot;A deterministic version of a JSON Schema object.&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;additionalProperties&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;allOf&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;default&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/default&quot;
# },
# &quot;description&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/description&quot;
# },
# &quot;discriminator&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;enum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/enum&quot;
# },
# &quot;example&quot; =&gt; {},
# &quot;exclusiveMaximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum&quot;
# },
# &quot;exclusiveMinimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;format&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;items&quot; =&gt; {
# &quot;anyOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;minItems&quot; =&gt; 1,
# &quot;type&quot; =&gt; &quot;array&quot;
# }
# ],
# &quot;default&quot; =&gt; {}
# },
# &quot;maxItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maxProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveInteger&quot;
# },
# &quot;maximum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/maximum&quot;
# },
# &quot;minItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minLength&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0&quot;
# },
# &quot;minimum&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/minimum&quot;
# },
# &quot;multipleOf&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/multipleOf&quot;
# },
# &quot;pattern&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/pattern&quot;
# },
# &quot;properties&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schema&quot;
# },
# &quot;default&quot; =&gt; {},
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;readOnly&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;required&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/definitions/stringArray&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;type&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/type&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/uniqueItems&quot;
# },
# &quot;xml&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/xml&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;schemesList&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The transfer protocol of the API.&quot;,
# &quot;items&quot; =&gt; {
# &quot;enum&quot; =&gt; [
# &quot;http&quot;,
# &quot;https&quot;,
# &quot;ws&quot;,
# &quot;wss&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;security&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/securityRequirement&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;securityDefinitions&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;oneOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/basicAuthenticationSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/apiKeySecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2ImplicitSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2PasswordSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2ApplicationSecurity&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/oauth2AccessCodeSecurity&quot;
# }
# ]
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;securityRequirement&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;tag&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;description&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;name&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# },
# &quot;title&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/title&quot;
# },
# &quot;uniqueItems&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;http://json-schema.org/draft-04/schema#/properties/uniqueItems&quot;
# },
# &quot;vendorExtension&quot; =&gt; {
# &quot;additionalItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;description&quot; =&gt; &quot;Any property starting with x- is valid.&quot;
# },
# &quot;xml&quot; =&gt; {
# &quot;additionalProperties&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;attribute&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# &quot;name&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;namespace&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;prefix&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wrapped&quot; =&gt; {
# &quot;default&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;validator&quot;}{&quot;schemas&quot;}{&quot;http://json-schema.org/draft-04/schema&quot;}{&quot;properties&quot;}{&quot;exclusiveMaximum&quot;}{&quot;default&quot;},
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;id&quot; =&gt; &quot;http://swagger.io/v2/schema.json#&quot;,
# &quot;patternProperties&quot; =&gt; {
# &quot;^x-&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/vendorExtension&quot;
# }
# },
# &quot;properties&quot; =&gt; {
# &quot;basePath&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The base path to the API. Example: &#39;/api&#39;.&quot;,
# &quot;pattern&quot; =&gt; &quot;^/&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;consumes&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types accepted by the API.&quot;
# },
# &quot;definitions&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/definitions&quot;
# },
# &quot;externalDocs&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/externalDocs&quot;
# },
# &quot;host&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The host (name or ip) of the API. Example: &#39;swagger.io&#39;&quot;,
# &quot;pattern&quot; =&gt; &quot;^[^{}/ :\\\\]+(?::\\d+)?\$&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;info&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/info&quot;
# },
# &quot;parameters&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/parameterDefinitions&quot;
# },
# &quot;paths&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/paths&quot;
# },
# &quot;produces&quot; =&gt; {
# &quot;allOf&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/mediaTypeList&quot;
# }
# ],
# &quot;description&quot; =&gt; &quot;A list of MIME types the API can produce.&quot;
# },
# &quot;responses&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/responseDefinitions&quot;
# },
# &quot;schemes&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/schemesList&quot;
# },
# &quot;security&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/security&quot;
# },
# &quot;securityDefinitions&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/securityDefinitions&quot;
# },
# &quot;swagger&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;The Swagger version of this document.&quot;,
# &quot;enum&quot; =&gt; [
# &quot;2.0&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;tags&quot; =&gt; {
# &quot;items&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/tag&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;,
# &quot;uniqueItems&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;}
# }
# },
# &quot;required&quot; =&gt; [
# &quot;swagger&quot;,
# &quot;info&quot;,
# &quot;paths&quot;
# ],
# &quot;title&quot; =&gt; &quot;A JSON Schema for Swagger 2.0 API.&quot;,
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# },
# &quot;version&quot; =&gt; 2
# }, &#39;JSON::Validator::OpenAPI::Mojolicious&#39; )
# }, &#39;Mojolicious::Plugin::OpenAPI&#39; )
# ]
# ],
# &quot;openapi_cors_allowed_origins&quot; =&gt; [],
# &quot;openapi_cors_default_exchange_callback&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi_cors_default_max_age&quot; =&gt; 1800
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Session:</td>
# <td class="striped value wide"><pre>{}
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Version:</td>
# <td class="striped value wide"><pre>1.1</pre></td>
# </tr>
#
# <tr>
# <td class="key">Accept-Encoding:</td>
# <td class="striped value wide"><pre>gzip</pre></td>
# </tr>
#
# <tr>
# <td class="key">Content-Length:</td>
# <td class="striped value wide"><pre>0</pre></td>
# </tr>
#
# <tr>
# <td class="key">Host:</td>
# <td class="striped value wide"><pre>127.0.0.1:50014</pre></td>
# </tr>
#
# <tr>
# <td class="key">User-Agent:</td>
# <td class="striped value wide"><pre>Mojolicious (Perl)</pre></td>
# </tr>
#
# <tr>
# <td class="key">X-Request-Base:</td>
# <td class="striped value wide"><pre>http://example.com/sub</pre></td>
# </tr>
#
# </table>
# </div>
# <div id="more" class="box infobox more spaced">
# <div id="infos">
# <table>
# <tr>
# <td class="key">Perl:</td>
# <td class="striped value wide"><pre>v5.30.0 (darwin)</pre></td>
# </tr>
#
# <tr>
# <td class="key">Mojolicious:</td>
# <td class="striped value wide"><pre>8.29 (Supervillain)</pre></td>
# </tr>
#
# <tr>
# <td class="key">Home:</td>
# <td class="striped value wide"><pre>/Users/marcus/Source/convos</pre></td>
# </tr>
#
# <tr>
# <td class="key">Template paths:</td>
# <td class="striped value wide"><pre>[
# &quot;/Users/marcus/Source/convos/templates&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Template classes:</td>
# <td class="striped value wide"><pre>[
# &quot;main&quot;,
# &quot;Convos&quot;,
# &quot;Mojolicious::Plugin::OpenAPI::SpecRenderer&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Static paths:</td>
# <td class="striped value wide"><pre>[
# &quot;/Users/marcus/Source/convos/public&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Static classes:</td>
# <td class="striped value wide"><pre>[
# &quot;main&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Include:</td>
# <td class="striped value wide"><pre>[
# &quot;.&quot;,
# &quot;/Users/marcus/Source/convos/lib&quot;,
# &quot;/Users/marcus/Source/convos/script/../lib&quot;,
# &quot;/Users/marcus/Source/convos/script/../local/lib/perl5/darwin-2level&quot;,
# &quot;/Users/marcus/Source/convos/script/../local/lib/perl5&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/site_perl/5.30.0/darwin-2level&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/site_perl/5.30.0&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/5.30.0/darwin-2level&quot;,
# &quot;/Users/marcus/.plenv/versions/5.30.0/lib/perl5/5.30.0&quot;
# ]
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Config:</td>
# <td class="striped value wide"><pre>{
# &quot;backend&quot; =&gt; &quot;Convos::Core::Backend::File&quot;,
# &quot;home&quot; =&gt; &quot;/Users/marcus/Source/convos/t/../local/test-web-base-url-t&quot;,
# &quot;log_file&quot; =&gt; undef
# }
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Moniker:</td>
# <td class="striped value wide"><pre>convos</pre></td>
# </tr>
#
# <tr>
# <td class="key">Name:</td>
# <td class="striped value wide"><pre>t/web-base-url.t</pre></td>
# </tr>
#
# <tr>
# <td class="key">Executable:</td>
# <td class="striped value wide"><pre>/Users/marcus/.dotfiles/link/plenv/versions/5.30.0/bin/perl5.30.0</pre></td>
# </tr>
#
# <tr>
# <td class="key">PID:</td>
# <td class="striped value wide"><pre>35213</pre></td>
# </tr>
#
# <tr>
# <td class="key">Time:</td>
# <td class="striped value wide"><pre>Sun Feb 2 10:55:58 2020</pre></td>
# </tr>
#
# </table>
# </div>
# <div class="tap">tap for more</div>
# </div>
# <div id="log" class="box infobox spaced">
# <table>
# <tr>
# <td class="striped value wide">
# <pre>[2020-02-02 10:55:58.61891] [35213] [error] [2228efc2] Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
#
# </pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>[2020-02-02 10:55:58.66461] [35213] [error] [0df9d4f0] Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
#
# </pre>
# </td>
# </tr>
# </table>
# </div>
# </div>
# <div id="footer">
# <a href="https://mojolicious.org">
# <picture>
# <img src="/mojo/logo-black.png"
# srcset="/mojo/logo-black-2x.png 2x"
# alt="Mojolicious logo">
# </picture>
# </a> </div>
# </body>
# </html>
# '
# expected: '/sub/foo'
[2020-02-02 10:55:58.69546] [35213] [error] [a7ecdb1e] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-base-url.t line 29.
# got: '500'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/base_url"'
# at t/web-base-url.t line 29.
# got: undef
# expected: 'http://example.com/sub'
# Failed test 'exact match for JSON Pointer "/url_for"'
# at t/web-base-url.t line 29.
# got: undef
# expected: '/sub/foo/bar'
# Failed test 'exact match for JSON Pointer "/web_url"'
# at t/web-base-url.t line 29.
# got: undef
# expected: 'http://example.com/sub/foo/bar'
# Failed test 'exact match for JSON Pointer "/web_url_rel"'
# at t/web-base-url.t line 29.
# got: undef
# expected: '/sub/foo/bar'
[2020-02-02 10:55:58.72355] [35213] [error] [f4dc8823] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-base-url.t line 33.
# got: '500'
# expected: '200'
# Failed test 'similar match for JSON Pointer "/base_url"'
# at t/web-base-url.t line 33.
# undef
# doesn't match '(?^:^http://.*:\d+/$)'
# Failed test 'exact match for JSON Pointer "/url_for"'
# at t/web-base-url.t line 33.
# got: undef
# expected: '/foo/bar'
# Failed test 'similar match for JSON Pointer "/web_url"'
# at t/web-base-url.t line 33.
# undef
# doesn't match '(?^:^http://.*:\d+/foo/bar$)'
# Failed test 'exact match for JSON Pointer "/web_url_rel"'
# at t/web-base-url.t line 33.
# got: undef
# expected: '/foo/bar'
[2020-02-02 10:55:58.75082] [35213] [error] [4e758f62] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-base-url.t line 38.
# got: '500'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/url_for"'
# at t/web-base-url.t line 38.
# got: undef
# expected: '/foo/bar'
# Failed test 'exact match for JSON Pointer "/web_url_rel"'
# at t/web-base-url.t line 38.
# got: undef
# expected: '/foo/bar'
# Looks like you failed 17 tests of 22.
t/web-base-url.t .................
Dubious, test returned 17 (wstat 4352, 0x1100)
Failed 17/22 subtests
t/web-basic.t .................... skipped: $ NODE_ENV=development pnpm run build
[2020-02-02 10:55:59.61440] [35216] [error] [0f53d441] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-connections.t line 17.
# got: '500'
# expected: '200'
[2020-02-02 10:55:59.61759] [35216] [error] [1508639a] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '200 OK'
# at t/web-connections.t line 19.
# got: '500'
# expected: '200'
[2020-02-02 10:55:59.62061] [35216] [error] [d8c1a6e9] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '400 Bad Request'
# at t/web-connections.t line 22.
# got: '500'
# expected: '400'
# Failed test 'exact match for JSON Pointer "/errors/0/message"'
# at t/web-connections.t line 22.
# got: 'Internal Server Error.'
# expected: 'Connection already exists.'
[2020-02-02 10:55:59.62399] [35216] [error] [316e4c80] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# Failed test '400 Bad Request'
# at t/web-connections.t line 25.
# got: '500'
# expected: '400'
# Failed test 'exact match for JSON Pointer "/errors/0/message"'
# at t/web-connections.t line 25.
# got: 'Internal Server Error.'
# expected: 'Protocol "foo" is not supported.'
# Failed test 'exact match for JSON Pointer "/connections/0"'
# at t/web-connections.t line 28.
# Structures begin differing at:
# $got = undef
# $expected = HASH(0x7fa771de9a38)
# Failed test 'exact match for JSON Pointer "/connections/1/connection_id"'
# at t/web-connections.t line 28.
# got: undef
# expected: 'irc-localhost'
# Failed test 'exact match for JSON Pointer "/connections/1/name"'
# at t/web-connections.t line 28.
# got: undef
# expected: 'localhost'
# Failed test 'exact match for JSON Pointer "/connections/1/url"'
# at t/web-connections.t line 28.
# got: undef
# expected: 'irc://localhost:50018?nick=superman&tls=1'
# Failed test 'exact match for JSON Pointer "/connections/1/wanted_state"'
# at t/web-connections.t line 28.
# got: undef
# expected: 'disconnected'
# Failed test '200 OK'
# at t/web-connections.t line 47.
# got: '404'
# expected: '200'
# Failed test '200 OK'
# at t/web-connections.t line 50.
# got: '404'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/name"'
# at t/web-connections.t line 50.
# got: undef
# expected: 'localhost'
# Failed test 'similar match for JSON Pointer "/state"'
# at t/web-connections.t line 50.
# undef
# doesn't match '(?^:^(connected|queued)$)'
# Failed test '200 OK'
# at t/web-connections.t line 53.
# got: '404'
# expected: '200'
# Failed test 'exact match for JSON Pointer "/name"'
# at t/web-connections.t line 53.
# got: undef
# expected: 'localhost'
# Failed test 'similar match for JSON Pointer "/url"'
# at t/web-connections.t line 53.
# undef
# doesn't match '(?^:irc://example\.com:9999)'
Can't call method "state" on an undefined value at t/web-connections.t line 57.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 38.
t/web-connections.t ..............
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 18/38 subtests
t/web-dialog.t ................... ok
[2020-02-02 10:56:00.77743] [35221] [error] [d973017f] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
Context:
28: sub _asset_version {
29: my $app = shift->app;
30: return $app->config->{asset_version} if $app->config->{asset_version};
31:
32: my $mode = $app->mode eq 'development' ? 'development' : 'production';
33: my @paths = (
34: $app->static->file("asset/webpack.$mode.html")->path,
35: $app->renderer->template_path({template => 'sw', format => 'js', handler => 'ep'}),
36: );
37:
38: my $version = 0;
Traceback (most recent call first):
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 51, in "Mojolicious::Plugin::EPRenderer"
File "template index.html.ep", line 2, in "Mojo::Template::Sandbox::59e12a466144052547d591a8a8b31c02"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 166, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 177, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPLRenderer.pm", line 41, in "Mojolicious::Plugin::EPLRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 41, in "Mojolicious::Plugin::EPRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 228, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 104, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 156, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 169, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 199, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 36, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 48, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 54, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 131, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 141, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 18, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 146, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server.pm", line 68, in "Mojo::Server"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 104, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Transaction/HTTP.pm", line 60, in "Mojo::Transaction::HTTP"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 219, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 200, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 110, in "Mojo::IOLoop::Stream"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 58, in "Mojo::IOLoop::Stream"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 52, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"
File "t/web-embed.t", line 18, in "main"
[2020-02-02 10:56:00.82199] [35221] [error] [d44c6e22] SSL connect attempt failed error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
[2020-02-02 10:56:00.82271] [35221] [error] [d44c6e22] SSL connect attempt failed error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
# Failed test '200 OK'
# at t/web-embed.t line 18.
# got: '500'
# expected: '200'
# Failed test 'has value for JSON Pointer "/html"'
# at t/web-embed.t line 18.
[2020-02-02 10:56:00.83757] [35221] [error] [cafeb5a0] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
Context:
28: sub _asset_version {
29: my $app = shift->app;
30: return $app->config->{asset_version} if $app->config->{asset_version};
31:
32: my $mode = $app->mode eq 'development' ? 'development' : 'production';
33: my @paths = (
34: $app->static->file("asset/webpack.$mode.html")->path,
35: $app->renderer->template_path({template => 'sw', format => 'js', handler => 'ep'}),
36: );
37:
38: my $version = 0;
Traceback (most recent call first):
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 51, in "Mojolicious::Plugin::EPRenderer"
File "template index.html.ep", line 2, in "Mojo::Template::Sandbox::59e12a466144052547d591a8a8b31c02"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPLRenderer.pm", line 19, in "Mojolicious::Plugin::EPLRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 41, in "Mojolicious::Plugin::EPRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 228, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 104, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 156, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 169, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 199, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 36, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 48, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Routes.pm", line 54, in "Mojolicious::Routes"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 131, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 141, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 213, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 15, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugins.pm", line 18, in "Mojolicious::Plugins"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious.pm", line 146, in "Mojolicious"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server.pm", line 68, in "Mojo::Server"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 104, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Transaction/HTTP.pm", line 60, in "Mojo::Transaction::HTTP"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 219, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Server/Daemon.pm", line 200, in "Mojo::Server::Daemon"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/EventEmitter.pm", line 15, in "Mojo::EventEmitter"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 110, in "Mojo::IOLoop::Stream"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop/Stream.pm", line 58, in "Mojo::IOLoop::Stream"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 52, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"
File "t/web-embed.t", line 21, in "main"
[2020-02-02 10:56:00.86317] [35221] [error] [e27d24e8] SSL connect attempt failed error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
[2020-02-02 10:56:00.86380] [35221] [error] [e27d24e8] SSL connect attempt failed error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
# Failed test '200 OK'
# at t/web-embed.t line 21.
# got: '500'
# expected: '200'
# Failed test 'X-Cached: 1'
# at t/web-embed.t line 21.
# got: undef
# expected: '1'
# Failed test 'exact match for JSON Pointer "/title"'
# at t/web-embed.t line 21.
# got: undef
# expected: 'Convos - Better group chat'
# Failed test 'similar match for JSON Pointer "/html"'
# at t/web-embed.t line 21.
# undef
# doesn't match '(?^:Convos - Better group chat)'
# Looks like you failed 6 tests of 17.
t/web-embed.t ....................
Dubious, test returned 6 (wstat 1536, 0x600)
Failed 6/17 subtests
[2020-02-02 10:56:01.41930] [35222] [error] [9148f479] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
Context:
28: sub _asset_version {
29: my $app = shift->app;
30: return $app->config->{asset_version} if $app->config->{asset_version};
31:
32: my $mode = $app->mode eq 'development' ? 'development' : 'production';
33: my @paths = (
34: $app->static->file("asset/webpack.$mode.html")->path,
35: $app->renderer->template_path({template => 'sw', format => 'js', handler => 'ep'}),
36: );
37:
38: my $version = 0;
Traceback (most recent call first):
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 51, in "Mojolicious::Plugin::EPRenderer"
File "template file.html.ep", line 2, in "Mojo::Template::Sandbox::eae2f5927c4df3331667cf0efff8f725"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 166, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 177, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPLRenderer.pm", line 41, in "Mojolicious::Plugin::EPLRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 41, in "Mojolicious::Plugin::EPRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 228, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 104, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 156, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Files.pm", line 53, in "Convos::Plugin::Files"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 102, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 188, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 79, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 129, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 70, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"
File "t/web-files.t", line 28, in "main"
[2020-02-02 10:56:01.45855] [35222] [error] [9148f479] Can't call method "path" on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
Context:
28: sub _asset_version {
29: my $app = shift->app;
30: return $app->config->{asset_version} if $app->config->{asset_version};
31:
32: my $mode = $app->mode eq 'development' ? 'development' : 'production';
33: my @paths = (
34: $app->static->file("asset/webpack.$mode.html")->path,
35: $app->renderer->template_path({template => 'sw', format => 'js', handler => 'ep'}),
36: );
37:
38: my $version = 0;
Traceback (most recent call first):
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 51, in "Mojolicious::Plugin::EPRenderer"
File "template file.html.ep", line 2, in "Mojo::Template::Sandbox::eae2f5927c4df3331667cf0efff8f725"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 166, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 177, in "Mojo::Template"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPLRenderer.pm", line 41, in "Mojolicious::Plugin::EPLRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 41, in "Mojolicious::Plugin::EPRenderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 228, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 104, in "Mojolicious::Renderer"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 156, in "Mojolicious::Controller"
File "/Users/marcus/Source/convos/lib/Convos/Plugin/Files.pm", line 53, in "Convos::Plugin::Files"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 102, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 188, in "Mojo::Promise"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 79, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 129, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 70, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"
File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"
File "t/web-files.t", line 28, in "main"
# Failed test '200 OK'
# at t/web-files.t line 28.
# got: '500'
# expected: '200'
# Failed test 'pre.paste so LinkEmbedder can do the right thing'
# at t/web-files.t line 28.
# Failed test 'exact match for selector "header h1"'
# at t/web-files.t line 28.
# got: ''
# expected: 'web-files.t'
# Failed test 'similar match for selector "header small"'
# at t/web-files.t line 28.
# ''
# doesn't match '(?^:^\d+-\d+-\d+)'
# Failed test 'content is similar'
# at t/web-files.t line 28.
# '<!DOCTYPE html>
# <!-- Request ID: 9148f479 -->
# <html>
# <head>
# <title>Server error (development mode)</title>
# <meta http-equiv="Pragma" content="no-cache">
# <meta http-equiv="Expires" content="-1">
# <script src="/mojo/jquery/jquery.js"></script>
# <script src="/mojo/prettify/run_prettify.js"></script>
# <link href="/mojo/prettify/prettify-mojo-dark.css" rel="stylesheet">
# <style>
# a img {
# border: 0;
# }
# body {
# background: url(/mojo/pinstripe-light.png);
# color: #445555;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: normal;
# line-height: 1.5em;
# margin: 0;
# }
# :not(pre) > code {
# background-color: #eef9ff;
# border: solid #cce4ff 1px;
# border-radius: 5px;
# color: #333;
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# padding: 0.4em;
# }
# h1 {
# color: #2a2a2a;
# font-size: 1.5em;
# margin: 0;
# }
# pre {
# font: 0.9em Consolas, Menlo, Monaco, Courier, monospace;
# margin: 0;
# white-space: pre-wrap;
# }
# pre > code {
# display: block;
# font: 1.0em Consolas, Menlo, Monaco, Courier, monospace;
# margin-bottom: 0.7em;
# margin-top: 0.7em;
# }
# table {
# border-collapse: collapse;
# width: 100%;
# }
# td { padding: 0.5em }
# .box {
# background-color: #fff;
# border: 1px solid #c1c1c1;
# overflow: hidden;
# padding: 1em;
# }
# .code {
# background-color: #1a1a1a;
# background: url(/mojo/pinstripe-dark.png);
# color: #eee;
# text-shadow: #333 0 1px 0;
# }
# .important {
# background-color: rgba(47, 48, 50, .75);
# }
# .infobox {
# color: #333;
# }
# .infobox tr:nth-child(odd) .value {
# background-color: #ddeeff;
# }
# .infobox tr:nth-child(even) .value {
# background-color: #eef9ff;
# }
# .key {
# text-align: right;
# }
# .more table {
# margin-bottom: 1em;
# }
# .spaced {
# margin-left: 5em;
# margin-right: 5em;
# }
# .striped {
# border-top: solid #cce4ff 1px;
# }
# .tap {
# font: 0.5em Verdana, sans-serif;
# text-align: center;
# }
# .value {
# padding-left: 1em;
# }
# .wide {
# width: 100%;
# }
# #error {
# font: 1.5em 'Helvetica Neue', Helvetica, sans-serif;
# font-weight: 300;
# margin: 0;
# text-shadow: #333 0 1px 0;
# }
# #footer {
# padding-top: 0.5em;
# text-align: center;
# }
# #nothing {
# border-bottom: 0;
# padding-top: 20px;
# }
# #showcase {
# border-bottom: 0;
# border-top: 0;
# }
# #showcase table {
# margin-top: 1em;
# }
# #showcase td {
# padding-top: 0;
# padding-bottom: 0;
# }
# #showcase .key {
# padding-right: 0;
# }
# #log {
# border-radius: 5px;
# margin-top: 1em;
# }
# #log table {
# margin: 0;
# }
# #mojobar {
# background-color: #1a1a1a;
# background: -webkit-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: -moz-linear-gradient(top, #2a2a2a 0%, #000 100%);
# background: linear-gradient(top, #2a2a2a 0%, #000 100%);
# box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
# height: 46px;
# overflow: hidden;
# width: 100%;
# z-index: 1000;
# }
# #mojobar-brand {
# display: inline-block;
# padding-left: 50px;
# padding-top: 4px;
# }
# #mojobar-links {
# display: inline;
# float: right;
# height: 60px;
# margin-top: 0.8em;
# padding-right: 50px;
# }
# #mojobar-links a {
# color: #bbb;
# font: 0.9em 'Helvetica Neue', Helvetica, sans-serif;
# margin-left: 0.5em;
# text-decoration: none;
# transition: all 200ms ease-in-out;
# }
# #mojobar-links a:hover {
# color: #fff;
# }
# #mojobar-links input {
# background-color: #3a3a3a;
# border: 1px solid rgba(0, 0, 0, 0.1);
# border-radius: 3px;
# color: #eee;
# display: inline;
# margin-left: 1em;
# padding: 4px;
# transition: all 0.15s;
# }
# #mojobar-links input:focus {
# background-color: #fff;
# color: #111;
# outline: 0;
# }
# #mojobar-links form {
# display: inline;
# }
# #more, #trace {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# }
# #more .tap, #trace .tap {
# text-shadow: #ddd 0 1px 0;
# }
# #request {
# border-bottom: 0;
# border-top-left-radius: 5px;
# border-top-right-radius: 5px;
# margin-top: 1em;
# }
# #routes {
# border-bottom-left-radius: 5px;
# border-bottom-right-radius: 5px;
# padding-top: 30px;
# }
# #trace {
# border-top: 0;
# }
# #wrapperlicious {
# max-width: 1000px;
# margin: 0 auto;
# }
# </style>
# </head>
# <body>
# <div id="mojobar">
# <a href="https://mojolicious.org" id="mojobar-brand">
# <picture>
# <img src="/mojo/logo-white.png"
# srcset="/mojo/logo-white-2x.png 2x">
# </picture>
# </a> <div id="mojobar-links">
# <a href="https://mojolicious.org/perldoc">Documentation</a>
# <a href="https://kiwiirc.com/nextclient/#irc://irc.freenode.net/mojo?nick=guest-?">Chat</a>
# <a href="https://github.com/mojolicious/mojo/wiki">Wiki</a>
# <a href="https://github.com/mojolicious/mojo">GitHub</a>
# <a href="https://metacpan.org/release/Mojolicious/">CPAN</a>
# <a href="https://groups.google.com/group/mojolicious">MailingList</a>
# <a href="https://twitter.com/perlmojo">Twitter</a>
# <form action="https://www.google.com/cse" target="_blank">
# <input name="cx" type="hidden" value="014527573091551588235:pwfplkjpgbi">
# <input name="ie" type="hidden" value="UTF-8">
# <input name="q" placeholder="Search" type="search">
# </form>
# </div>
# </div>
# <script>
# function mojoDrawer(handle, drawer) {
# $(handle).on('click', function () {
# $(drawer).slideToggle('slow');
# var text = $(handle + ' div.tap').text();
# text = text == "tap for more" ? "tap for less" : "tap for more";
# $(handle + ' div.tap').text(text);
# });
# $(drawer).toggle();
# }
# $(function () {
# mojoDrawer('#trace', '#frames');
# mojoDrawer('#more', '#infos');
# });
# </script>
# <div id="wrapperlicious">
# <div id="nothing" class="box spaced"></div>
# <div id="showcase" class="box code spaced">
# <pre id="error">Can&#39;t call method &quot;path&quot; on an undefined value at /Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm line 33.
# </pre>
# <div id="context" class="more">
# <table>
# <tr>
# <td class="key">28</td>
# <td class="value wide">
# <pre><code class="prettyprint">sub _asset_version {</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">29</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $app = shift-&gt;app;</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">30</td>
# <td class="value wide">
# <pre><code class="prettyprint"> return $app-&gt;config-&gt;{asset_version} if $app-&gt;config-&gt;{asset_version};</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">31</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">32</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $mode = $app-&gt;mode eq &#39;development&#39; ? &#39;development&#39; : &#39;production&#39;;</code></pre>
# </td>
# </tr>
# <tr class="important">
# <td class="key">33</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my @paths = (</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">34</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;static-&gt;file(&quot;asset/webpack.$mode.html&quot;)-&gt;path,</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">35</td>
# <td class="value wide">
# <pre><code class="prettyprint"> $app-&gt;renderer-&gt;template_path({template =&gt; &#39;sw&#39;, format =&gt; &#39;js&#39;, handler =&gt; &#39;ep&#39;}),</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">36</td>
# <td class="value wide">
# <pre><code class="prettyprint"> );</code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">37</td>
# <td class="value wide">
# <pre><code class="prettyprint"></code></pre>
# </td>
# </tr>
# <tr>
# <td class="key">38</td>
# <td class="value wide">
# <pre><code class="prettyprint"> my $version = 0;</code></pre>
# </td>
# </tr>
# </table>
# </div>
# </div>
# <div id="trace" class="box spaced">
# <div id="frames" class="infobox more">
# <table>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 33, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 29, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 124, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Helpers.pm", line 93, in "Convos::Plugin::Helpers"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 51, in "Mojolicious::Plugin::EPRenderer"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "template file.html.ep", line 2, in "Mojo::Template::Sandbox::eae2f5927c4df3331667cf0efff8f725"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 163, in "Mojo::Template"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 166, in "Mojo::Template"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Template.pm", line 177, in "Mojo::Template"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPLRenderer.pm", line 41, in "Mojolicious::Plugin::EPLRenderer"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Plugin/EPRenderer.pm", line 41, in "Mojolicious::Plugin::EPRenderer"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 228, in "Mojolicious::Renderer"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Renderer.pm", line 104, in "Mojolicious::Renderer"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojolicious/Controller.pm", line 156, in "Mojolicious::Controller"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/lib/Convos/Plugin/Files.pm", line 53, in "Convos::Plugin::Files"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 219, in "Mojo::Promise"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 102, in "Mojo::Promise"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Promise.pm", line 188, in "Mojo::Promise"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 79, in "Mojo::IOLoop"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 129, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/Poll.pm", line 145, in "Mojo::Reactor::Poll"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 70, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/Reactor/EV.pm", line 30, in "Mojo::Reactor::EV"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/IOLoop.pm", line 134, in "Mojo::IOLoop"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Mojo/UserAgent.pm", line 65, in "Mojo::UserAgent"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 396, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 343, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "/Users/marcus/Source/convos/script/../local/lib/perl5/Test/Mojo.pm", line 121, in "Test::Mojo"</pre>
# </td>
# </tr>
# <tr>
# <td class="striped value wide">
# <pre>File "t/web-files.t", line 28, in "main"</pre>
# </td>
# </tr>
# </table>
# </div>
# <div class="tap">tap for more</div>
# </div>
# <div id="request" class="box infobox spaced">
# <table>
# <tr>
# <td class="key">Request ID:</td>
# <td class="striped value wide"><pre>9148f479</pre></td>
# </tr>
#
# <tr>
# <td class="key">Method:</td>
# <td class="striped value wide"><pre>GET</pre></td>
# </tr>
#
# <tr>
# <td class="key">URL:</td>
# <td class="striped value wide"><pre>/file/1/vGWDFLnZMyXstzmj</pre></td>
# </tr>
#
# <tr>
# <td class="key">Base URL:</td>
# <td class="striped value wide"><pre>http://127.0.0.1:50028</pre></td>
# </tr>
#
# <tr>
# <td class="key">Parameters:</td>
# <td class="striped value wide"><pre>{}
# </pre></td>
# </tr>
#
# <tr>
# <td class="key">Stash:</td>
# <td class="striped value wide"><pre>{
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;debug&quot; =&gt; [
# &quot;info&quot;
# ],
# &quot;fid&quot; =&gt; &quot;vGWDFLnZMyXstzmj&quot;,
# &quot;file&quot; =&gt; bless( {
# &quot;asset&quot; =&gt; bless( {
# &quot;path&quot; =&gt; bless( do{\(my $o = &quot;/Users/marcus/Source/convos/local/test-web-files-t/superman\@example.com/upload/vGWDFLnZMyXstzmj.data&quot;)}, &#39;Mojo::File&#39; ),
# &quot;pid&quot; =&gt; 35222
# }, &#39;Mojo::Asset::File&#39; ),
# &quot;filename&quot; =&gt; &quot;web-files.t&quot;,
# &quot;id&quot; =&gt; &quot;vGWDFLnZMyXstzmj&quot;,
# &quot;path&quot; =&gt; $VAR1-&gt;{&quot;file&quot;}{&quot;asset&quot;}{&quot;path&quot;},
# &quot;saved&quot; =&gt; &quot;2020-02-02T09:56:01Z&quot;,
# &quot;types&quot; =&gt; bless( {
# &quot;mapping&quot; =&gt; {
# &quot;appcache&quot; =&gt; [
# &quot;text/cache-manifest&quot;
# ],
# &quot;atom&quot; =&gt; [
# &quot;application/atom+xml&quot;
# ],
# &quot;bin&quot; =&gt; [
# &quot;application/octet-stream&quot;
# ],
# &quot;css&quot; =&gt; [
# &quot;text/css&quot;
# ],
# &quot;gif&quot; =&gt; [
# &quot;image/gif&quot;
# ],
# &quot;gz&quot; =&gt; [
# &quot;application/x-gzip&quot;
# ],
# &quot;htm&quot; =&gt; [
# &quot;text/html&quot;
# ],
# &quot;html&quot; =&gt; [
# &quot;text/html;charset=UTF-8&quot;
# ],
# &quot;ico&quot; =&gt; [
# &quot;image/x-icon&quot;
# ],
# &quot;jpeg&quot; =&gt; [
# &quot;image/jpeg&quot;
# ],
# &quot;jpg&quot; =&gt; [
# &quot;image/jpeg&quot;
# ],
# &quot;js&quot; =&gt; [
# &quot;application/javascript&quot;
# ],
# &quot;json&quot; =&gt; [
# &quot;application/json;charset=UTF-8&quot;
# ],
# &quot;mp3&quot; =&gt; [
# &quot;audio/mpeg&quot;
# ],
# &quot;mp4&quot; =&gt; [
# &quot;video/mp4&quot;
# ],
# &quot;ogg&quot; =&gt; [
# &quot;audio/ogg&quot;
# ],
# &quot;ogv&quot; =&gt; [
# &quot;video/ogg&quot;
# ],
# &quot;pdf&quot; =&gt; [
# &quot;application/pdf&quot;
# ],
# &quot;png&quot; =&gt; [
# &quot;image/png&quot;
# ],
# &quot;rss&quot; =&gt; [
# &quot;application/rss+xml&quot;
# ],
# &quot;svg&quot; =&gt; [
# &quot;image/svg+xml&quot;
# ],
# &quot;t&quot; =&gt; [],
# &quot;txt&quot; =&gt; [
# &quot;text/plain;charset=UTF-8&quot;
# ],
# &quot;webm&quot; =&gt; [
# &quot;video/webm&quot;
# ],
# &quot;woff&quot; =&gt; [
# &quot;font/woff&quot;
# ],
# &quot;woff2&quot; =&gt; [
# &quot;font/woff2&quot;
# ],
# &quot;xml&quot; =&gt; [
# &quot;application/xml&quot;,
# &quot;text/xml&quot;
# ],
# &quot;zip&quot; =&gt; [
# &quot;application/zip&quot;
# ]
# }
# }, &#39;Mojolicious::Types&#39; ),
# &quot;user&quot; =&gt; bless( {
# &quot;core&quot; =&gt; bless( {
# &quot;backend&quot; =&gt; bless( {
# &quot;event_to_class&quot; =&gt; {
# &quot;multiline_message&quot; =&gt; &quot;Convos::Plugin::Files::File&quot;
# },
# &quot;events&quot; =&gt; {
# &quot;connection&quot; =&gt; [
# sub { &quot;DUMMY&quot; }
# ]
# },
# &quot;home&quot; =&gt; bless( do{\(my $o = &quot;/Users/marcus/Source/convos/local/test-web-files-t&quot;)}, &#39;Mojo::File&#39; )
# }, &#39;Convos::Core::Backend::File&#39; ),
# &quot;base_url&quot; =&gt; bless( {
# &quot;base&quot; =&gt; bless( {
# &quot;host&quot; =&gt; &quot;127.0.0.1&quot;,
# &quot;port&quot; =&gt; 50028,
# &quot;scheme&quot; =&gt; &quot;http&quot;
# }, &#39;Mojo::URL&#39; ),
# &quot;host&quot; =&gt; &quot;127.0.0.1&quot;,
# &quot;path&quot; =&gt; bless( {
# &quot;charset&quot; =&gt; &quot;UTF-8&quot;,
# &quot;path&quot; =&gt; &quot;/&quot;
# }, &#39;Mojo::Path&#39; ),
# &quot;port&quot; =&gt; 50028,
# &quot;query&quot; =&gt; bless( {}, &#39;Mojo::Parameters&#39; ),
# &quot;scheme&quot; =&gt; &quot;http&quot;,
# &quot;userinfo&quot; =&gt; undef
# }, &#39;Mojo::URL&#39; ),
# &quot;connect_tid&quot; =&gt; &quot;a554fa73aa02feb903b46ec87b1745d6&quot;,
# &quot;home&quot; =&gt; $VAR1-&gt;{&quot;file&quot;}{&quot;user&quot;}{&quot;core&quot;}{&quot;backend&quot;}{&quot;home&quot;},
# &quot;settings&quot; =&gt; bless( {
# &quot;contact&quot; =&gt; &quot;mailto:root\@localhost&quot;,
# &quot;core&quot; =&gt; $VAR1-&gt;{&quot;file&quot;}{&quot;user&quot;}{&quot;core&quot;},
# &quot;default_connection&quot; =&gt; bless( {
# &quot;host&quot; =&gt; &quot;chat.freenode.net&quot;,
# &quot;path&quot; =&gt; bless( {
# &quot;charset&quot; =&gt; &quot;UTF-8&quot;,
# &quot;path&quot; =&gt; &quot;/%23convos&quot;
# }, &#39;Mojo::Path&#39; ),
# &quot;port&quot; =&gt; 6697,
# &quot;query&quot; =&gt; bless( {
# &quot;charset&quot; =&gt; &quot;UTF-8&quot;,
# &quot;pairs&quot; =&gt; []
# }, &#39;Mojo::Parameters&#39; ),
# &quot;scheme&quot; =&gt; &quot;irc&quot;
# }, &#39;Mojo::URL&#39; ),
# &quot;forced_connection&quot; =&gt; bless( do{\(my $o = 0)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;local_secret&quot; =&gt; &quot;3b9bdfa39360f1ced38baf4012815896&quot;,
# &quot;open_to_public&quot; =&gt; $VAR1-&gt;{&quot;file&quot;}{&quot;user&quot;}{&quot;core&quot;}{&quot;settings&quot;}{&quot;forced_connection&quot;},
# &quot;organization_name&quot; =&gt; &quot;Convos&quot;,
# &quot;organization_url&quot; =&gt; bless( {
# &quot;host&quot; =&gt; &quot;convos.by&quot;,
# &quot;path&quot; =&gt; bless( {
# &quot;charset&quot; =&gt; &quot;UTF-8&quot;,
# &quot;leading_slash&quot; =&gt; &quot;&quot;,
# &quot;parts&quot; =&gt; [],
# &quot;trailing_slash&quot; =&gt; &quot;&quot;
# }, &#39;Mojo::Path&#39; ),
# &quot;query&quot; =&gt; bless( {
# &quot;charset&quot; =&gt; &quot;UTF-8&quot;,
# &quot;pairs&quot; =&gt; []
# }, &#39;Mojo::Parameters&#39; ),
# &quot;scheme&quot; =&gt; &quot;https&quot;
# }, &#39;Mojo::URL&#39; ),
# &quot;session_secrets&quot; =&gt; [
# &quot;not-very-secret&quot;
# ]
# }, &#39;Convos::Core::Settings&#39; ),
# &quot;started&quot; =&gt; 1,
# &quot;users&quot; =&gt; {
# &quot;superman\@example.com&quot; =&gt; $VAR1-&gt;{&quot;file&quot;}{&quot;user&quot;}
# }
# }, &#39;Convos::Core&#39; ),
# &quot;email&quot; =&gt; &quot;superman\@example.com&quot;,
# &quot;highlight_keywords&quot; =&gt; [],
# &quot;password&quot; =&gt; &quot;\$2a\$08\$ZQXBicj59DQ1UrY5jbj1t.fzEWwmwBg51Pqn7XUClmg6hmVfXRRTC&quot;,
# &quot;registered&quot; =&gt; bless( {
# &quot;epoch&quot; =&gt; 1580637361
# }, &#39;Mojo::Date&#39; ),
# &quot;roles&quot; =&gt; [],
# &quot;uid&quot; =&gt; 1,
# &quot;unread&quot; =&gt; 0
# }, &#39;Convos::Core::User&#39; ),
# &quot;write_only&quot; =&gt; bless( do{\(my $o = 0)}, &#39;JSON::PP::Boolean&#39; )
# }, &#39;Convos::Plugin::Files::File&#39; ),
# &quot;handler&quot; =&gt; &quot;ep&quot;,
# &quot;layout&quot; =&gt; &quot;convos&quot;,
# &quot;openapi&quot; =&gt; &quot;Should never be rendered.&quot;,
# &quot;openapi.base_paths&quot; =&gt; [
# [
# &quot;/api&quot;,
# bless( {
# &quot;_renderer&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;default_response_codes&quot; =&gt; [
# 400,
# 401,
# 404,
# 500,
# 501
# ],
# &quot;default_response_name&quot; =&gt; &quot;DefaultResponse&quot;,
# &quot;log_level&quot; =&gt; &quot;warn&quot;,
# &quot;parameters_for&quot; =&gt; {
# &quot;/connection/{connection_id}&quot; =&gt; {
# &quot;delete&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;format&quot; =&gt; &quot;uri&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/dialog_id&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/messages&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages after a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;after&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Find messages before a given ISO 8601 timestamp&quot;,
# &quot;format&quot; =&gt; &quot;date-time&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;before&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Max number of messages to retrieve&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;limit&quot;,
# &quot;type&quot; =&gt; &quot;integer&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Messages must match this string&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;match&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/connection/{connection_id}/read&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/connection_id&quot;
# }
# ]
# },
# &quot;/connections&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;on_connect_commands&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Commands to be run after the connection is established&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;url&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Example: irc://user:pass\@irc.perl.org?nick=superman&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;wanted_state&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Connection state&quot;,
# &quot;enum&quot; =&gt; [
# &quot;connected&quot;,
# &quot;disconnected&quot;
# ],
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;url&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/dialogs&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/embed&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;URL to resource&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;url&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/file&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;file&quot;,
# &quot;required&quot; =&gt; bless( do{\(my $o = 1)}, &#39;JSON::PP::Boolean&#39; ),
# &quot;type&quot; =&gt; &quot;file&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;id&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;formData&quot;,
# &quot;name&quot; =&gt; &quot;write_only&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ]
# },
# &quot;/file/:uid/:fid&quot; =&gt; {
# &quot;get&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;fid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# {
# &quot;in&quot; =&gt; &quot;path&quot;,
# &quot;name&quot; =&gt; &quot;uid&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# },
# &quot;/notifications&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/notifications/read&quot; =&gt; {
# &quot;post&quot; =&gt; []
# },
# &quot;/settings&quot; =&gt; {
# &quot;get&quot; =&gt; [],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/ServerSettings&quot;
# }
# }
# ]
# },
# &quot;/user&quot; =&gt; {
# &quot;delete&quot; =&gt; [],
# &quot;get&quot; =&gt; [
# {
# &quot;description&quot; =&gt; &quot;Retrieve connection list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;connections&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve dialog list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;dialogs&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Retrieve notifications list.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;notifications&quot;,
# &quot;type&quot; =&gt; &quot;boolean&quot;
# }
# ],
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;highlight_keywords&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Extra keywords to highlight on&quot;,
# &quot;items&quot; =&gt; {
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;type&quot; =&gt; &quot;array&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# }
# },
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/login&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User password&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/logout&quot; =&gt; {
# &quot;get&quot; =&gt; []
# },
# &quot;/user/register&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;in&quot; =&gt; &quot;body&quot;,
# &quot;name&quot; =&gt; &quot;body&quot;,
# &quot;required&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;parameters_for&quot;}{&quot;/connection/{connection_id}&quot;}{&quot;post&quot;}[1]{&quot;required&quot;},
# &quot;schema&quot; =&gt; {
# &quot;properties&quot; =&gt; {
# &quot;email&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;User email&quot;,
# &quot;format&quot; =&gt; &quot;email&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;exp&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Expire time for a token&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# },
# &quot;password&quot; =&gt; {
# &quot;\$ref&quot; =&gt; &quot;#/definitions/password&quot;
# },
# &quot;token&quot; =&gt; {
# &quot;description&quot; =&gt; &quot;Checksum generated by inviteUser&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# },
# &quot;required&quot; =&gt; [
# &quot;email&quot;,
# &quot;password&quot;
# ],
# &quot;type&quot; =&gt; &quot;object&quot;
# }
# }
# ]
# },
# &quot;/user/{email}/invite&quot; =&gt; {
# &quot;post&quot; =&gt; [
# {
# &quot;\$ref&quot; =&gt; &quot;#/parameters/email_in_path&quot;
# },
# {
# &quot;description&quot; =&gt; &quot;Role to give the user.&quot;,
# &quot;in&quot; =&gt; &quot;query&quot;,
# &quot;name&quot; =&gt; &quot;role&quot;,
# &quot;type&quot; =&gt; &quot;string&quot;
# }
# ]
# }
# },
# &quot;route&quot; =&gt; bless( {
# &quot;children&quot; =&gt; [
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;name&quot; =&gt; &quot;&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; }
# },
# &quot;placeholders&quot; =&gt; [],
# &quot;regex&quot; =&gt; qr/^\/?(?:\.([^\/]+))?$/sp,
# &quot;tree&quot; =&gt; [],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; {
# &quot;num&quot; =&gt; qr/[0-9]+/
# }
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;delete&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/user\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/user\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/user\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;upload&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/file\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;info&quot;,
# &quot;controller&quot; =&gt; &quot;url&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/embed&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/embed\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/dialogs&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/dialogs\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_get&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/settings\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateSettings&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;settings_update&quot;,
# &quot;controller&quot; =&gt; &quot;admin&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/settings&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/settings\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;login&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/login&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;placeholders&quot; =&gt; [],
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;regex&quot; =&gt; qr/^\/user\/login\/?(?:\.([^\/]+))?$/sp,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;type_start&quot; =&gt; &quot;:&quot;,
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;list&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;createConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;create&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connections&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;logout&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/logout&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;register&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/register&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;get&quot;,
# &quot;controller&quot; =&gt; &quot;files&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/file/:uid/:fid&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;read&quot;,
# &quot;controller&quot; =&gt; &quot;notifications&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/notifications/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;generate_invite_link&quot;,
# &quot;controller&quot; =&gt; &quot;user&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/user/{email}/invite&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;remove&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;delete&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;DELETE&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;updateConnection&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;update&quot;,
# &quot;controller&quot; =&gt; &quot;connection&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;connectionMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setDialogLastRead&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;last_read&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;post&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/read&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;POST&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;dialogMessages&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;action&quot; =&gt; &quot;messages&quot;,
# &quot;controller&quot; =&gt; &quot;dialog&quot;,
# &quot;openapi.method&quot; =&gt; &quot;get&quot;,
# &quot;openapi.path&quot; =&gt; &quot;/connection/{connection_id}/dialog/{dialog_id}/messages&quot;
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;dialog&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;dialog_id&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;messages&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;/dialog/&lt;#dialog_id&gt;/messages&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;GET&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;deleteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;uploadFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;embed_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/embed&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/embed&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listDialogs_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/dialogs&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/dialogs&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getSettings_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/settings&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/settings&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;loginUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/login&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/login&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;listConnections_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connections&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connections&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;logoutUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/logout&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/logout&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;registerUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user/register&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/register&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;notificationMessages_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;getFile_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/file&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;uid&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;fid&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/file/:uid/:fid&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;readNotifications_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/notifications/read&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/notifications/read&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;inviteUser_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/user&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;email&quot;,
# &quot;relaxed&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;text&quot;,
# &quot;invite&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/user/&lt;#email&gt;/invite&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;removeConnection_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
# &quot;placeholder&quot;,
# &quot;connection_id&quot;
# ]
# ],
# &quot;types&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;}{&quot;children&quot;}[0]{&quot;pattern&quot;}{&quot;types&quot;},
# &quot;unparsed&quot; =&gt; &quot;/connection/&lt;:connection_id&gt;&quot;,
# &quot;wildcard_start&quot; =&gt; &quot;*&quot;
# }, &#39;Mojolicious::Routes::Pattern&#39; ),
# &quot;via&quot; =&gt; [
# &quot;OPTIONS&quot;
# ]
# }, &#39;Mojolicious::Routes::Route&#39; ),
# bless( {
# &quot;children&quot; =&gt; [],
# &quot;custom&quot; =&gt; 1,
# &quot;name&quot; =&gt; &quot;setConnectionLastRead_openapi_documentation&quot;,
# &quot;parent&quot; =&gt; $VAR1-&gt;{&quot;openapi.base_paths&quot;}[0][1]{&quot;route&quot;},
# &quot;pattern&quot; =&gt; bless( {
# &quot;constraints&quot; =&gt; {},
# &quot;defaults&quot; =&gt; {
# &quot;cb&quot; =&gt; sub { &quot;DUMMY&quot; },
# &quot;openapi.default_options&quot; =&gt; 1
# },
# &quot;placeholder_start&quot; =&gt; &quot;:&quot;,
# &quot;quote_end&quot; =&gt; &quot;&gt;&quot;,
# &quot;quote_start&quot; =&gt; &quot;&lt;&quot;,
# &quot;relaxed_start&quot; =&gt; &quot;#&quot;,
# &quot;tree&quot; =&gt; [
# [
# &quot;text&quot;,
# &quot;/connection&quot;
# ],
# [
# &quot;slash&quot;
# ],
# [
#
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment