443 lines
64 KiB
HTML
443 lines
64 KiB
HTML
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Notes API</title><link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"><style>@import url('https://fonts.googleapis.com/css?family=Roboto:400,700|Inconsolata|Raleway:200');.hljs-comment,.hljs-title{color:#8e908c}.hljs-variable,.hljs-attribute,.hljs-tag,.hljs-regexp,.ruby .hljs-constant,.xml .hljs-tag .hljs-title,.xml .hljs-pi,.xml .hljs-doctype,.html .hljs-doctype,.css .hljs-id,.css .hljs-class,.css .hljs-pseudo{color:#c82829}.hljs-number,.hljs-preprocessor,.hljs-pragma,.hljs-built_in,.hljs-literal,.hljs-params,.hljs-constant{color:#f5871f}.ruby .hljs-class .hljs-title,.css .hljs-rules .hljs-attribute{color:#eab700}.hljs-string,.hljs-value,.hljs-inheritance,.hljs-header,.ruby .hljs-symbol,.xml .hljs-cdata{color:#718c00}.css .hljs-hexcolor{color:#3e999f}.hljs-function,.python .hljs-decorator,.python .hljs-title,.ruby .hljs-function .hljs-title,.ruby .hljs-title .hljs-keyword,.perl .hljs-sub,.javascript .hljs-title,.coffeescript .hljs-title{color:#4271ae}.hljs-keyword,.javascript .hljs-function{color:#8959a8}.hljs{display:block;background:white;color:#4d4d4c;padding:.5em}.coffeescript .javascript,.javascript .xml,.tex .hljs-formula,.xml .javascript,.xml .vbscript,.xml .css,.xml .hljs-cdata{opacity:.5}.right .hljs-comment{color:#969896}.right .css .hljs-class,.right .css .hljs-id,.right .css .hljs-pseudo,.right .hljs-attribute,.right .hljs-regexp,.right .hljs-tag,.right .hljs-variable,.right .html .hljs-doctype,.right .ruby .hljs-constant,.right .xml .hljs-doctype,.right .xml .hljs-pi,.right .xml .hljs-tag .hljs-title{color:#c66}.right .hljs-built_in,.right .hljs-constant,.right .hljs-literal,.right .hljs-number,.right .hljs-params,.right .hljs-pragma,.right .hljs-preprocessor{color:#de935f}.right .css .hljs-rule .hljs-attribute,.right .ruby .hljs-class .hljs-title{color:#f0c674}.right .hljs-header,.right .hljs-inheritance,.right .hljs-name,.right .hljs-string,.right .hljs-value,.right .ruby .hljs-symbol,.right .xml .hljs-cdata{color:#b5bd68}.right .css .hljs-hexcolor,.right .hljs-title{color:#8abeb7}.right .coffeescript .hljs-title,.right .hljs-function,.right .javascript .hljs-title,.right .perl .hljs-sub,.right .python .hljs-decorator,.right .python .hljs-title,.right .ruby .hljs-function .hljs-title,.right .ruby .hljs-title .hljs-keyword{color:#81a2be}.right .hljs-keyword,.right .javascript .hljs-function{color:#b294bb}.right .hljs{display:block;overflow-x:auto;background:#1d1f21;color:#c5c8c6;padding:.5em;-webkit-text-size-adjust:none}.right .coffeescript .javascript,.right .javascript .xml,.right .tex .hljs-formula,.right .xml .css,.right .xml .hljs-cdata,.right .xml .javascript,.right .xml .vbscript{opacity:.5}.hljs-comment,.hljs-quote{color:#7e7777}.hljs-attribute,.hljs-link,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ca4949}.hljs-built_in,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#b45a3c}.hljs-bullet,.hljs-string,.hljs-symbol{color:#4b8b8b}.hljs-section,.hljs-title{color:#7272ca}.hljs-keyword,.hljs-selector-tag{color:#8464c4}.hljs-addition,.hljs-deletion{color:#1b1818;display:inline-block;width:100%}.hljs-deletion{background-color:#ca4949}.hljs-addition{background-color:#4b8b8b}.hljs{display:block;overflow-x:auto;background:#1b1818;color:#8a8585;padding:.5em}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.right .hljs-comment,.right .hljs-quote{color:#7e7777}.right .hljs-attribute,.right .hljs-link,.right .hljs-name,.right .hljs-regexp,.right .hljs-selector-class,.right .hljs-selector-id,.right .hljs-tag,.right .hljs-template-variable,.right .hljs-variable{color:#ca4949}.right .hljs-built_in,.right .hljs-literal,.right .hljs-meta,.right .hljs-number,.right .hljs-params,.right .hljs-type{color:#b45a3c}.right .hljs-bullet,.right .hljs-string,.right .hljs-symbol{color:#4b8b8b}.right .hljs-section,.right .hljs-title{color:#7272ca}.right .hljs-keyword,.right .hljs-selector-tag{color:#8464c4}.right .hljs-addition,.right .hljs-deletion{color:#1b1818;display:inline-block;width:100%}.right .hljs-deletion{background-color:#ca4949}.right .hljs-addition{background-color:#4b8b8b}.right .hljs{display:block;overflow-x:auto;background:#1b1818;color:#8a8585;padding:.5em}.right .hljs-emphasis{font-style:italic}.right .hljs-strong{font-weight:700}body{color:#888;background:#060606;font:400 14px / 1.42 'Roboto',Helvetica,sans-serif}header{border-bottom:1px solid #3c3c3c;margin-bottom:12px}h1,h2,h3,h4,h5{color:white;margin:12px 0}h1 .permalink,h2 .permalink,h3 .permalink,h4 .permalink,h5 .permalink{margin-left:0;opacity:0;transition:opacity .25s ease}h1:hover .permalink,h2:hover .permalink,h3:hover .permalink,h4:hover .permalink,h5:hover .permalink{opacity:1}.triple h1 .permalink,.triple h2 .permalink,.triple h3 .permalink,.triple h4 .permalink,.triple h5 .permalink{opacity:.15}.triple h1:hover .permalink,.triple h2:hover .permalink,.triple h3:hover .permalink,.triple h4:hover .permalink,.triple h5:hover .permalink{opacity:.15}h1{font:200 36px 'Raleway',Helvetica,sans-serif;font-size:36px}h2{font:200 36px 'Raleway',Helvetica,sans-serif;font-size:30px}h3{font-size:100%;text-transform:uppercase}h5{font-size:100%;font-weight:normal}p{margin:0 0 10px}p.choices{line-height:1.6}a{color:#2a9fd6;text-decoration:none}li p{margin:0}hr.split{border:0;height:1px;width:100%;padding-left:6px;margin:12px auto;background-image:linear-gradient(to right, rgba(136,136,136,0) 20%, rgba(136,136,136,0.2) 51.4%, rgba(136,136,136,0.2) 51.4%, rgba(136,136,136,0) 80%)}dl dt{float:left;width:130px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}dl dd{margin-left:150px}blockquote{color:rgba(136,136,136,0.5);font-size:15.5px;padding:10px 20px;margin:12px 0;border-left:5px solid #282828}blockquote p:last-child{margin-bottom:0}pre{background-color:#1b1b1b;padding:12px;border:1px solid #282828;border-radius:6px;overflow:auto}pre code{color:#888;background-color:transparent;padding:0;border:none}code{color:#ddd;background-color:#444;font:'Inconsolata',monospace;padding:1px 4px;border:1px solid #282828;border-radius:3px}ul,ol{padding-left:2em}table{border-collapse:collapse;border-spacing:0;margin-bottom:12px}table tr:nth-child(2n){background-color:#010101}table th,table td{padding:6px 12px;border:1px solid #000}.text-muted{opacity:.5}.note,.warning{padding:.3em 1em;margin:1em 0;border-radius:2px;font-size:90%}.note h1,.warning h1,.note h2,.warning h2,.note h3,.warning h3,.note h4,.warning h4,.note h5,.warning h5,.note h6,.warning h6{font-family:200 36px 'Raleway',Helvetica,sans-serif;font-size:135%;font-weight:500}.note p,.warning p{margin:.5em 0}.note{color:#888;background-color:#191e10;border-left:4px solid #77b300}.note h1,.note h2,.note h3,.note h4,.note h5,.note h6{color:#77b300}.warning{color:#888;background-color:#1b1010;border-left:4px solid #900}.warning h1,.warning h2,.warning h3,.warning h4,.warning h5,.warning h6{color:#900}header{margin-top:24px}nav{position:fixed;top:24px;bottom:0;overflow-y:auto}nav .resource-group{padding:0}nav .resource-group .heading{position:relative}nav .resource-group .heading .chevron{position:absolute;top:12px;right:12px;opacity:.5}nav .resource-group .heading a{display:block;color:#888;opacity:.7;border-left:2px solid transparent;margin:0}nav .resource-group .heading a:hover{text-decoration:none;background-color:bad-color;border-left:2px solid #888}nav ul{list-style-type:none;padding-left:0}nav ul a{display:block;font-size:13px;color:rgba(136,136,136,0.7);padding:8px 12px;border-top:1px solid #2a2a2a;border-left:2px solid transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nav ul a:hover{text-decoration:none;background-color:bad-color;border-left:2px solid #888}nav ul>li{margin:0}nav ul>li:first-child{margin-top:-12px}nav ul>li:last-child{margin-bottom:-12px}nav ul ul a{padding-left:24px}nav ul ul li{margin:0}nav ul ul li:first-child{margin-top:0}nav ul ul li:last-child{margin-bottom:0}nav>div>div>ul>li:first-child>a{border-top:none}.preload *{transition:none !important}.pull-left{float:left}.pull-right{float:right}.badge{display:inline-block;float:right;min-width:10px;min-height:14px;padding:3px 7px;font-size:12px;color:#fff;background-color:#3c3c3c;border-radius:10px;margin:-2px 0}.badge.get{color:white;background-color:#9933cc}.badge.head{color:white;background-color:#9933cc}.badge.options{color:white;background-color:#9933cc}.badge.put{color:white;background-color:#ff8800}.badge.patch{color:white;background-color:#ff8800}.badge.post{color:white;background-color:#77b300}.badge.delete{color:white;background-color:#cc0000}.collapse-button{float:right}.collapse-button .close{display:none;color:#2a9fd6;cursor:pointer}.collapse-button .open{color:#2a9fd6;cursor:pointer}.collapse-button.show .close{display:inline}.collapse-button.show .open{display:none}.collapse-content{max-height:0;overflow:hidden;transition:max-height .3s ease-in-out}nav{width:220px}.container{max-width:940px;margin-left:auto;margin-right:auto}.container .row .content{margin-left:244px;width:696px}.container .row:after{content:'';display:block;clear:both}.container-fluid nav{width:22%}.container-fluid .row .content{margin-left:24%}.container-fluid.triple nav{width:16.5%;padding-right:1px}.container-fluid.triple .row .content{position:relative;margin-left:16.5%;padding-left:24px}.middle:before,.middle:after{content:'';display:table}.middle:after{clear:both}.middle{box-sizing:border-box;width:51.5%;padding-right:12px}.right{box-sizing:border-box;float:right;width:48.5%;padding-left:12px}.right a{color:#2a9fd6}.right h1,.right h2,.right h3,.right h4,.right h5,.right p,.right div{color:#888}.right pre{background-color:#222;border:1px solid #222}.right pre code{color:#888}.right .description{margin-top:12px}.triple .resource-heading{font-size:125%}.definition{margin-top:12px;margin-bottom:12px}.definition .method{font-weight:bold}.definition .method.get{color:#8a2eb8}.definition .method.head{color:#8a2eb8}.definition .method.options{color:#8a2eb8}.definition .method.post{color:#89b82e}.definition .method.put{color:#b8772e}.definition .method.patch{color:#b8772e}.definition .method.delete{color:#b82e2e}.definition .uri{word-break:break-all;word-wrap:break-word}.definition .hostname{opacity:.5}.example-names{background-color:#eee;padding:12px;border-radius:6px}.example-names .tab-button{cursor:pointer;color:#888;border:1px solid #ddd;padding:6px;margin-left:12px}.example-names .tab-button.active{background-color:#c8c8c8}.right .example-names{background-color:#101010}.right .example-names .tab-button{color:#888;border:1px solid #060606;border-radius:6px}.right .example-names .tab-button.active{background-color:#2a2a2a}#nav-background{position:fixed;left:0;top:0;bottom:0;width:16.5%;padding-right:14.4px;background-color:#060606;border-right:1px solid #060606;z-index:-1}#right-panel-background{position:absolute;right:-12px;top:-12px;bottom:-12px;width:48.6%;background-color:#1a1a1a;z-index:-1}@media (max-width:1200px){nav{width:198px}.container{max-width:840px}.container .row .content{margin-left:224px;width:606px}}@media (max-width:992px){nav{width:169.4px}.container{max-width:720px}.container .row .content{margin-left:194px;width:526px}}@media (max-width:768px){nav{display:none}.container{width:95%;max-width:none}.container .row .content,.container-fluid .row .content,.container-fluid.triple .row .content{margin-left:auto;margin-right:auto;width:95%}#nav-background{display:none}#right-panel-background{width:48.6%}}.back-to-top{position:fixed;z-index:1;bottom:0;right:24px;padding:4px 8px;color:rgba(136,136,136,0.5);background-color:#3c3c3c;text-decoration:none !important;border-top:1px solid #2a2a2a;border-left:1px solid #2a2a2a;border-right:1px solid #2a2a2a;border-top-left-radius:3px;border-top-right-radius:3px}.resource-group{padding:12px;margin-bottom:12px;background-color:#222;border:1px solid #2a2a2a;border-radius:6px}.resource-group h2.group-heading,.resource-group .heading a{padding:12px;margin:-12px -12px 12px -12px;background-color:#3c3c3c;border-bottom:1px solid #2a2a2a;border-top-left-radius:6px;border-top-right-radius:6px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.triple .content .resource-group{padding:0;border:none}.triple .content .resource-group h2.group-heading,.triple .content .resource-group .heading a{margin:0 0 12px 0;border:1px solid #2a2a2a}nav .resource-group .heading a{padding:12px;margin-bottom:0}nav .resource-group .collapse-content{padding:0}.action{margin-bottom:12px;padding:12px 12px 0 12px;overflow:hidden;border:1px solid transparent;border-radius:6px}.action h4.action-heading{padding:6px 12px;margin:-12px -12px 12px -12px;border-bottom:1px solid transparent;border-top-left-radius:6px;border-top-right-radius:6px;overflow:hidden}.action h4.action-heading .name{float:right;font-weight:normal;padding:6px 0}.action h4.action-heading .method{padding:6px 12px;margin-right:12px;border-radius:3px;display:inline-block}.action h4.action-heading .method.get{color:#fff;background-color:#5c1f7a}.action h4.action-heading .method.head{color:#fff;background-color:#5c1f7a}.action h4.action-heading .method.options{color:#fff;background-color:#5c1f7a}.action h4.action-heading .method.put{color:#fff;background-color:#995200}.action h4.action-heading .method.patch{color:#fff;background-color:#995200}.action h4.action-heading .method.post{color:#fff;background-color:#334d00}.action h4.action-heading .method.delete{color:#fff;background-color:#600}.action h4.action-heading code{color:#ddd;background-color:#2b2b2b;border-color:transparent;font-weight:normal;word-break:break-all;display:inline-block;margin-top:2px}.action dl.inner{padding-bottom:2px}.action .title{border-bottom:1px solid #222;margin:0 -12px -1px -12px;padding:12px}.action.get{border-color:#7a29a3}.action.get h4.action-heading{color:#5c1f7a;background:#9933cc;border-bottom-color:#7a29a3}.action.head{border-color:#7a29a3}.action.head h4.action-heading{color:#5c1f7a;background:#9933cc;border-bottom-color:#7a29a3}.action.options{border-color:#7a29a3}.action.options h4.action-heading{color:#5c1f7a;background:#9933cc;border-bottom-color:#7a29a3}.action.post{border-color:#558000}.action.post h4.action-heading{color:#334d00;background:#77b300;border-bottom-color:#558000}.action.put{border-color:#cc6d00}.action.put h4.action-heading{color:#995200;background:#ff8800;border-bottom-color:#cc6d00}.action.patch{border-color:#cc6d00}.action.patch h4.action-heading{color:#995200;background:#ff8800;border-bottom-color:#cc6d00}.action.delete{border-color:#900}.action.delete h4.action-heading{color:#600;background:#cc0000;border-bottom-color:#900}</style></head><body class="preload"><div id="nav-background"></div><div class="container-fluid triple"><div class="row"><nav><div class="resource-group"><div class="heading"><div class="chevron"><i class="open fa fa-angle-down"></i></div><a href="#accounts">Accounts</a></div><div class="collapse-content"><ul><li><a href="#accounts-create-an-account-post"><span class="badge post"><i class="fa fa-plus"></i></span>Register a new user</a></li><li><a href="#accounts-authenticate-user-post"><span class="badge post"><i class="fa fa-plus"></i></span>Authenticate a user</a></li></ul></div></div><div class="resource-group"><div class="heading"><div class="chevron"><i class="open fa fa-angle-down"></i></div><a href="#notes">Notes</a></div><div class="collapse-content"><ul><li><a href="#notes-notes-get"><span class="badge get"><i class="fa fa-arrow-down"></i></span>Get Notes</a></li><li><a href="#notes-note">Note</a><ul><li><a href="#notes-note-post"><span class="badge post"><i class="fa fa-plus"></i></span>Create a Note</a></li><li><a href="#notes-note-get"><span class="badge get"><i class="fa fa-arrow-down"></i></span>Get Note</a></li><li><a href="#notes-note-patch"><span class="badge patch"><i class="fa fa-pencil"></i></span>Update a Note</a></li><li><a href="#notes-note-delete"><span class="badge delete"><i class="fa fa-times"></i></span>Delete Note</a></li></ul></li><li><a href="#notes-chapters">Chapters</a><ul><li><a href="#notes-chapters-post"><span class="badge post"><i class="fa fa-plus"></i></span>Post a chapter</a></li><li><a href="#notes-chapters-patch"><span class="badge patch"><i class="fa fa-pencil"></i></span>Patch a chapter</a></li><li><a href="#notes-chapters-delete"><span class="badge delete"><i class="fa fa-times"></i></span>Delete a chapter</a></li></ul></li></ul></div></div><div class="resource-group"><div class="heading"><div class="chevron"><i class="open fa fa-angle-down"></i></div><a href="#tags">Tags</a></div><div class="collapse-content"><ul><li><a href="#tags-tags-get"><span class="badge get"><i class="fa fa-arrow-down"></i></span>Get all tags</a></li></ul></div></div><p style="text-align: center; word-wrap: break-word;"><a href="http://localhost:5000">http://localhost:5000</a></p></nav><div class="content"><div id="right-panel-background"></div><div class="middle"><header><h1 id="top">Notes API</h1></header></div><div class="right"><h5>API Endpoint</h5><a href="http://localhost:5000">http://localhost:5000</a></div><div class="middle"></div><div class="middle"><section id="accounts" class="resource-group"><h2 class="group-heading">Accounts <a href="#accounts" class="permalink">¶</a></h2></section></div><div class="middle"><div id="accounts-create-an-account" class="resource"><h3 class="resource-heading">Create an account <a href="#accounts-create-an-account" class="permalink">¶</a></h3></div></div><div class="right"><div class="definition"><span class="method post">POST</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/register</span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">username</span>": <span class="hljs-value"><span class="hljs-string">"babar"</span></span>,
|
|
"<span class="hljs-attribute">email</span>": <span class="hljs-value"><span class="hljs-string">"michel@seed-it.eu"</span></span>,
|
|
"<span class="hljs-attribute">password</span>": <span class="hljs-value"><span class="hljs-string">"tortue"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">username</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">email</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">password</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">409</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">message</span>": <span class="hljs-value"><span class="hljs-string">"Created"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">message</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">message</span>": <span class="hljs-value"><span class="hljs-string">"User already exists"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">message</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="accounts-create-an-account-post" class="action post"><h4 class="action-heading"><div class="name">Register a new user</div><a href="#accounts-create-an-account-post" class="method post">POST</a><code class="uri">/register</code></h4></div></div><hr class="split"><div class="middle"><div id="accounts-authenticate-user" class="resource"><h3 class="resource-heading">Authenticate user <a href="#accounts-authenticate-user" class="permalink">¶</a></h3><p>Authenticate one user to access protected routes.</p>
|
|
</div></div><div class="right"><div class="definition"><span class="method post">POST</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/login</span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">username</span>": <span class="hljs-value"><span class="hljs-string">"babar"</span></span>,
|
|
"<span class="hljs-attribute">password</span>": <span class="hljs-value"><span class="hljs-string">"tortue"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">username</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">password</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">401</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">token</span>": <span class="hljs-value"><span class="hljs-string">"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">token</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">description</span>": <span class="hljs-value"><span class="hljs-string">"Invalid credentials"</span></span>,
|
|
"<span class="hljs-attribute">error</span>": <span class="hljs-value"><span class="hljs-string">"Bad Request"</span></span>,
|
|
"<span class="hljs-attribute">status_code</span>": <span class="hljs-value"><span class="hljs-number">401</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">description</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">error</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">status_code</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"number"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="accounts-authenticate-user-post" class="action post"><h4 class="action-heading"><div class="name">Authenticate a user</div><a href="#accounts-authenticate-user-post" class="method post">POST</a><code class="uri">/login</code></h4></div></div><hr class="split"><div class="middle"><section id="notes" class="resource-group"><h2 class="group-heading">Notes <a href="#notes" class="permalink">¶</a></h2></section></div><div class="middle"><div id="notes-notes" class="resource"><h3 class="resource-heading">Notes <a href="#notes-notes" class="permalink">¶</a></h3></div></div><div class="right"><div class="definition"><span class="method get">GET</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes</span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>[
|
|
{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"Kotlin"</span></span>,
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"Dev"</span>,
|
|
<span class="hljs-string">"Server"</span>
|
|
]</span>,
|
|
"<span class="hljs-attribute">updatedAt</span>": <span class="hljs-value"><span class="hljs-string">"2020-01-20T00:00:00"</span>
|
|
</span>},
|
|
{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"Java"</span></span>,
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"Dev"</span>
|
|
]</span>,
|
|
"<span class="hljs-attribute">updatedAt</span>": <span class="hljs-value"><span class="hljs-string">"2018-01-20T00:00:00"</span>
|
|
</span>}
|
|
]</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-notes-get" class="action get"><h4 class="action-heading"><div class="name">Get Notes</div><a href="#notes-notes-get" class="method get">GET</a><code class="uri">/notes</code></h4></div></div><hr class="split"><div class="middle"><div id="notes-note" class="resource"><h3 class="resource-heading">Note <a href="#notes-note" class="permalink">¶</a></h3></div></div><div class="right"><div class="definition"><span class="method post">POST</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"Dev"</span>,
|
|
<span class="hljs-string">"Server"</span>
|
|
]
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">201</span><span class="tab-button">409</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-note-post" class="action post"><h4 class="action-heading"><div class="name">Create a Note</div><a href="#notes-note-post" class="method post">POST</a><code class="uri">/notes/{noteTitle}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="right"><div class="definition"><span class="method get">GET</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"Dev"</span>,
|
|
<span class="hljs-string">"Server"</span>
|
|
]</span>,
|
|
"<span class="hljs-attribute">chapters</span>": <span class="hljs-value">[
|
|
{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"Introduction"</span></span>,
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value"><span class="hljs-string">"..."</span>
|
|
</span>},
|
|
{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"Objects"</span></span>,
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value"><span class="hljs-string">"..."</span>
|
|
</span>}
|
|
]
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">chapters</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-note-get" class="action get"><h4 class="action-heading"><div class="name">Get Note</div><a href="#notes-note-get" class="method get">GET</a><code class="uri">/notes/{noteTitle}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="right"><div class="definition"><span class="method patch">PATCH</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span><span class="tab-button">example 2</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"NewTitle"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"new"</span>,
|
|
<span class="hljs-string">"tags"</span>
|
|
]
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-note-patch" class="action patch"><h4 class="action-heading"><div class="name">Update a Note</div><a href="#notes-note-patch" class="method patch">PATCH</a><code class="uri">/notes/{noteTitle}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="right"><div class="definition"><span class="method delete">DELETE</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-note-delete" class="action delete"><h4 class="action-heading"><div class="name">Delete Note</div><a href="#notes-note-delete" class="method delete">DELETE</a><code class="uri">/notes/{noteTitle}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="middle"><div id="notes-chapters" class="resource"><h3 class="resource-heading">Chapters <a href="#notes-chapters" class="permalink">¶</a></h3></div></div><div class="right"><div class="definition"><span class="method post">POST</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span>/chapters/<span class="hljs-attribute" title="chapterNumber">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"Chapter 1"</span></span>,
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value"><span class="hljs-string">"..."</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}</span>,
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">201</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-chapters-post" class="action post"><h4 class="action-heading"><div class="name">Post a chapter</div><a href="#notes-chapters-post" class="method post">POST</a><code class="uri">/notes/{noteTitle}/chapters/{chapterNumber}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd><dt>chapterNumber</dt><dd><code>number</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The chapter number.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="right"><div class="definition"><span class="method patch">PATCH</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span>/chapters/<span class="hljs-attribute" title="chapterNumber">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span><span class="tab-button">example 2</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value"><span class="hljs-string">"new title"</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">title</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value"><span class="hljs-string">"..."</span>
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">content</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"string"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-chapters-patch" class="action patch"><h4 class="action-heading"><div class="name">Patch a chapter</div><a href="#notes-chapters-patch" class="method patch">PATCH</a><code class="uri">/notes/{noteTitle}/chapters/{chapterNumber}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd><dt>chapterNumber</dt><dd><code>number</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The chapter number.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="right"><div class="definition"><span class="method delete">DELETE</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/notes/<span class="hljs-attribute" title="noteTitle">Kotlin</span>/chapters/<span class="hljs-attribute" title="chapterNumber">Kotlin</span></span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span><span class="tab-button">404</span></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div><div class="tab"><div><div class="inner"><div class="description text-muted">This response has no content.</div><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="notes-chapters-delete" class="action delete"><h4 class="action-heading"><div class="name">Delete a chapter</div><a href="#notes-chapters-delete" class="method delete">DELETE</a><code class="uri">/notes/{noteTitle}/chapters/{chapterNumber}</code></h4><div class="title"><strong>URI Parameters</strong><div class="collapse-button show"><span class="close">Hide</span><span class="open">Show</span></div></div><div class="collapse-content"><dl class="inner"><dt>noteTitle</dt><dd><code>string</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The title of the Note.</p>
|
|
</dd><dt>chapterNumber</dt><dd><code>number</code> <span class="required">(required)</span> <span class="text-muted example"><strong>Example: </strong><span>Kotlin</span></span><p>The chapter number.</p>
|
|
</dd></dl></div></div></div><hr class="split"><div class="middle"><section id="tags" class="resource-group"><h2 class="group-heading">Tags <a href="#tags" class="permalink">¶</a></h2></section></div><div class="middle"><div id="tags-tags" class="resource"><h3 class="resource-heading">Tags <a href="#tags-tags" class="permalink">¶</a></h3></div></div><div class="right"><div class="definition"><span class="method get">GET</span> <span class="uri"><span class="hostname">http://localhost:5000</span>/tags</span></div><div class="tabs"><div class="example-names"><span>Requests</span><span class="tab-button">example 1</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span><br><span class="hljs-attribute">Authorization</span>: <span class="hljs-string">Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c</span></code></pre><div style="height: 1px;"></div></div></div><div class="tabs"><div class="example-names"><span>Responses</span><span class="tab-button">200</span></div><div class="tab"><div><div class="inner"><h5>Headers</h5><pre><code><span class="hljs-attribute">Content-Type</span>: <span class="hljs-string">application/json</span></code></pre><div style="height: 1px;"></div><h5>Body</h5><pre><code>{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">[
|
|
<span class="hljs-string">"Dev"</span>,
|
|
<span class="hljs-string">"Server"</span>
|
|
]
|
|
</span>}</code></pre><div style="height: 1px;"></div><h5>Schema</h5><pre><code>{
|
|
"<span class="hljs-attribute">$schema</span>": <span class="hljs-value"><span class="hljs-string">"http://json-schema.org/draft-04/schema#"</span></span>,
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"object"</span></span>,
|
|
"<span class="hljs-attribute">properties</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">tags</span>": <span class="hljs-value">{
|
|
"<span class="hljs-attribute">type</span>": <span class="hljs-value"><span class="hljs-string">"array"</span>
|
|
</span>}
|
|
</span>}
|
|
</span>}</code></pre><div style="height: 1px;"></div></div></div></div></div></div></div></div><div class="middle"><div id="tags-tags-get" class="action get"><h4 class="action-heading"><div class="name">Get all tags</div><a href="#tags-tags-get" class="method get">GET</a><code class="uri">/tags</code></h4></div></div><hr class="split"><div class="middle"><p style="text-align: center;" class="text-muted">Generated by <a href="https://github.com/danielgtaylor/aglio" class="aglio">aglio</a> on 20 Apr 2020</p></div></div></div></div><script>/* eslint-env browser */
|
|
/* eslint quotes: [2, "single"] */
|
|
'use strict';
|
|
|
|
/*
|
|
Determine if a string ends with another string.
|
|
*/
|
|
function endsWith(str, suffix) {
|
|
return str.indexOf(suffix, str.length - suffix.length) !== -1;
|
|
}
|
|
|
|
/*
|
|
Get a list of direct child elements by class name.
|
|
*/
|
|
function childrenByClass(element, name) {
|
|
var filtered = [];
|
|
|
|
for (var i = 0; i < element.children.length; i++) {
|
|
var child = element.children[i];
|
|
var classNames = child.className.split(' ');
|
|
if (classNames.indexOf(name) !== -1) {
|
|
filtered.push(child);
|
|
}
|
|
}
|
|
|
|
return filtered;
|
|
}
|
|
|
|
/*
|
|
Get an array [width, height] of the window.
|
|
*/
|
|
function getWindowDimensions() {
|
|
var w = window,
|
|
d = document,
|
|
e = d.documentElement,
|
|
g = d.body,
|
|
x = w.innerWidth || e.clientWidth || g.clientWidth,
|
|
y = w.innerHeight || e.clientHeight || g.clientHeight;
|
|
|
|
return [x, y];
|
|
}
|
|
|
|
/*
|
|
Collapse or show a request/response example.
|
|
*/
|
|
function toggleCollapseButton(event) {
|
|
var button = event.target.parentNode;
|
|
var content = button.parentNode.nextSibling;
|
|
var inner = content.children[0];
|
|
|
|
if (button.className.indexOf('collapse-button') === -1) {
|
|
// Clicked without hitting the right element?
|
|
return;
|
|
}
|
|
|
|
if (content.style.maxHeight && content.style.maxHeight !== '0px') {
|
|
// Currently showing, so let's hide it
|
|
button.className = 'collapse-button';
|
|
content.style.maxHeight = '0px';
|
|
} else {
|
|
// Currently hidden, so let's show it
|
|
button.className = 'collapse-button show';
|
|
content.style.maxHeight = inner.offsetHeight + 12 + 'px';
|
|
}
|
|
}
|
|
|
|
function toggleTabButton(event) {
|
|
var i, index;
|
|
var button = event.target;
|
|
|
|
// Get index of the current button.
|
|
var buttons = childrenByClass(button.parentNode, 'tab-button');
|
|
for (i = 0; i < buttons.length; i++) {
|
|
if (buttons[i] === button) {
|
|
index = i;
|
|
button.className = 'tab-button active';
|
|
} else {
|
|
buttons[i].className = 'tab-button';
|
|
}
|
|
}
|
|
|
|
// Hide other tabs and show this one.
|
|
var tabs = childrenByClass(button.parentNode.parentNode, 'tab');
|
|
for (i = 0; i < tabs.length; i++) {
|
|
if (i === index) {
|
|
tabs[i].style.display = 'block';
|
|
} else {
|
|
tabs[i].style.display = 'none';
|
|
}
|
|
}
|
|
}
|
|
|
|
/*
|
|
Collapse or show a navigation menu. It will not be hidden unless it
|
|
is currently selected or `force` has been passed.
|
|
*/
|
|
function toggleCollapseNav(event, force) {
|
|
var heading = event.target.parentNode;
|
|
var content = heading.nextSibling;
|
|
var inner = content.children[0];
|
|
|
|
if (heading.className.indexOf('heading') === -1) {
|
|
// Clicked without hitting the right element?
|
|
return;
|
|
}
|
|
|
|
if (content.style.maxHeight && content.style.maxHeight !== '0px') {
|
|
// Currently showing, so let's hide it, but only if this nav item
|
|
// is already selected. This prevents newly selected items from
|
|
// collapsing in an annoying fashion.
|
|
if (force || window.location.hash && endsWith(event.target.href, window.location.hash)) {
|
|
content.style.maxHeight = '0px';
|
|
}
|
|
} else {
|
|
// Currently hidden, so let's show it
|
|
content.style.maxHeight = inner.offsetHeight + 12 + 'px';
|
|
}
|
|
}
|
|
|
|
/*
|
|
Refresh the page after a live update from the server. This only
|
|
works in live preview mode (using the `--server` parameter).
|
|
*/
|
|
function refresh(body) {
|
|
document.querySelector('body').className = 'preload';
|
|
document.body.innerHTML = body;
|
|
|
|
// Re-initialize the page
|
|
init();
|
|
autoCollapse();
|
|
|
|
document.querySelector('body').className = '';
|
|
}
|
|
|
|
/*
|
|
Determine which navigation items should be auto-collapsed to show as many
|
|
as possible on the screen, based on the current window height. This also
|
|
collapses them.
|
|
*/
|
|
function autoCollapse() {
|
|
var windowHeight = getWindowDimensions()[1];
|
|
var itemsHeight = 64; /* Account for some padding */
|
|
var itemsArray = Array.prototype.slice.call(
|
|
document.querySelectorAll('nav .resource-group .heading'));
|
|
|
|
// Get the total height of the navigation items
|
|
itemsArray.forEach(function (item) {
|
|
itemsHeight += item.parentNode.offsetHeight;
|
|
});
|
|
|
|
// Should we auto-collapse any nav items? Try to find the smallest item
|
|
// that can be collapsed to show all items on the screen. If not possible,
|
|
// then collapse the largest item and do it again. First, sort the items
|
|
// by height from smallest to largest.
|
|
var sortedItems = itemsArray.sort(function (a, b) {
|
|
return a.parentNode.offsetHeight - b.parentNode.offsetHeight;
|
|
});
|
|
|
|
while (sortedItems.length && itemsHeight > windowHeight) {
|
|
for (var i = 0; i < sortedItems.length; i++) {
|
|
// Will collapsing this item help?
|
|
var itemHeight = sortedItems[i].nextSibling.offsetHeight;
|
|
if ((itemsHeight - itemHeight <= windowHeight) || i === sortedItems.length - 1) {
|
|
// It will, so let's collapse it, remove its content height from
|
|
// our total and then remove it from our list of candidates
|
|
// that can be collapsed.
|
|
itemsHeight -= itemHeight;
|
|
toggleCollapseNav({target: sortedItems[i].children[0]}, true);
|
|
sortedItems.splice(i, 1);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/*
|
|
Initialize the interactive functionality of the page.
|
|
*/
|
|
function init() {
|
|
var i, j;
|
|
|
|
// Make collapse buttons clickable
|
|
var buttons = document.querySelectorAll('.collapse-button');
|
|
for (i = 0; i < buttons.length; i++) {
|
|
buttons[i].onclick = toggleCollapseButton;
|
|
|
|
// Show by default? Then toggle now.
|
|
if (buttons[i].className.indexOf('show') !== -1) {
|
|
toggleCollapseButton({target: buttons[i].children[0]});
|
|
}
|
|
}
|
|
|
|
var responseCodes = document.querySelectorAll('.example-names');
|
|
for (i = 0; i < responseCodes.length; i++) {
|
|
var tabButtons = childrenByClass(responseCodes[i], 'tab-button');
|
|
for (j = 0; j < tabButtons.length; j++) {
|
|
tabButtons[j].onclick = toggleTabButton;
|
|
|
|
// Show by default?
|
|
if (j === 0) {
|
|
toggleTabButton({target: tabButtons[j]});
|
|
}
|
|
}
|
|
}
|
|
|
|
// Make nav items clickable to collapse/expand their content.
|
|
var navItems = document.querySelectorAll('nav .resource-group .heading');
|
|
for (i = 0; i < navItems.length; i++) {
|
|
navItems[i].onclick = toggleCollapseNav;
|
|
|
|
// Show all by default
|
|
toggleCollapseNav({target: navItems[i].children[0]});
|
|
}
|
|
}
|
|
|
|
// Initial call to set up buttons
|
|
init();
|
|
|
|
window.onload = function () {
|
|
autoCollapse();
|
|
// Remove the `preload` class to enable animations
|
|
document.querySelector('body').className = '';
|
|
};
|
|
</script></body></html> |