Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
- <meta name="description" content="">
- <meta name="author" content="">
- <title>MyZaGa</title>
- <!-- Bootstrap core CSS -->
- <link href="/stylesheets/bootstrap.min.css" rel="stylesheet">
- <!-- Custom styles for this template -->
- <link href="/stylesheets//scrolling-nav.css" rel="stylesheet">
- </head>
- <body id="page-top">
- {{>nav-bar}}
- <header class="bg-blue text-white auth-bg">
- <div class="container text-center">
- <h1>MyZaGa API</h1>
- <p class="w-50 lead d-inline-block">Integrate with MyZaGa via API</p>
- </div>
- </header>
- <section id="services" class="bg-gray">
- <div class="container bg-light rounded" style="padding-top: 50px; padding-bottom: 50px:">
- <div class="row">
- <div class="col-lg-8 mx-auto">
- <h2>Endpoints</h2>
- <p class="lead"><b>NOTE:</b> <code>{entities}</code> is refers to <code>users</code>,<code>tracks</code>, <code>playlists</code>, <code>comments</code>.</p>
- <p>Get current user: <code>GET /api/v1/me</code></p>
- <p>Get list of entities: <code>GET /api/v1/{entities}</code>
- <ul>
- <li>queries: <i>search: search throught list by string, page: page number </i></li>
- <li><i>user: get playlists by user id </i><b>only for <code>playlists</code> model</b></li>
- </ul>
- <b>Responses with a paginated list</b>
- </p>
- <p>Get entity by id: <code>GET /api/v1/{entities}/:id</code><br>
- <b>Responses with a single entity</b></p>
- <p>Create new entity: <code>POST /api/v1/{entities}/new</code><ul>
- <li>params for <code>users</code>: <i>login: alphanumeric string, pass: alphanumeric string</i></li>
- <li>params for <code>playlists</code>: <i>desc: string, tracks: array of <code>track</code> ids</i></li>
- <li>params for <code>tracks</code>: <i>author, album, name: string, year: number, track: audio file, image: image file</i></li>
- </ul>
- <b>Responses with a created entity</b>
- </p>
- <p>Update entity by id: <code>POST /api/v1/{entities}/:id/update</code><ul>
- <li>params for <code>users</code>: <i>bio, fullname: string, ava: image file</i></li>
- <li>params for <code>playlists</code>: <i>desc: string, tracks: array of <code>track</code> ids</i></li>
- <li>params for <code>tracks</code>: <i>author, album, name: string, year: number</i></li>
- </ul>
- </p>
- <b>Responses with a replaced entity</b>
- <p>Delete entity by id: <code>POST /api/v1/{entities}/:id</code><br>
- <b>Responses with a deleted entity</b>
- </p>
- <h2>Errors</h2>
- <p>Format: <code>{ err: "{error_message}"}</code></p>
- <p>Messages:
- <ul>
- <li><code>No such entity</code> - Requested entity is not exist</li>
- <li><code>Bad request</code> - Invalid inputs in request</li>
- <li><code>Forbidden</code> - Current user is not allowed to do operation</li>
- <li><code>Unathorized</code> - User is not authenticated</li>
- </ul></p>
- <h2>Authentication</h2>
- <p>Strategy: Basic Auth</p>
- <p>Headers: <code>Authorization: Basic {Base64 encoded login:pass string}</code></p>
- </div>
- </div>
- </div>
- </section>
- {{>footer}}
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement