875 lines
59 KiB
HTML
875 lines
59 KiB
HTML
<!DOCTYPE html>
|
||
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||
|
||
<title>Authentication — FitTrackee 0.5.1
|
||
documentation</title>
|
||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||
<script src="../_static/jquery.js"></script>
|
||
<script src="../_static/underscore.js"></script>
|
||
<script src="../_static/doctools.js"></script>
|
||
<link rel="index" title="Index" href="../genindex.html" />
|
||
<link rel="search" title="Search" href="../search.html" />
|
||
<link rel="next" title="Configuration" href="configuration.html" />
|
||
<link rel="prev" title="API documentation" href="index.html" />
|
||
<meta charset='utf-8'>
|
||
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
|
||
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
|
||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||
<script type="text/javascript" src="../_static/js/jquery-1.12.4.min.js "></script>
|
||
<script type="text/javascript" src="../_static/js/jquery-fix.js "></script>
|
||
<script type="text/javascript" src="../_static/bootstrap-3.4.1/js/bootstrap.min.js "></script>
|
||
<script type="text/javascript" src="../_static/bootstrap-sphinx.js "></script>
|
||
|
||
</head><body>
|
||
|
||
<div id="navbar" class="navbar navbar-default navbar-fixed-top">
|
||
<div class="container">
|
||
<div class="navbar-header">
|
||
<!-- .btn-navbar is used as the toggle for collapsed navbar content -->
|
||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
</button>
|
||
<a class="navbar-brand" href="../index.html">
|
||
FitTrackee</a>
|
||
<span class="navbar-text navbar-version pull-left"><b>0.5.1
|
||
</b></span>
|
||
</div>
|
||
|
||
<div class="collapse navbar-collapse nav-collapse">
|
||
<ul class="nav navbar-nav">
|
||
|
||
<li><a href="https://github.com/SamR1/FitTrackee">GitHub</a></li>
|
||
|
||
|
||
<li class="dropdown globaltoc-container">
|
||
<a role="button"
|
||
id="dLabelGlobalToc"
|
||
data-toggle="dropdown"
|
||
data-target="#"
|
||
href="../index.html">Docs <b class="caret"></b></a>
|
||
<ul class="dropdown-menu globaltoc"
|
||
role="menu"
|
||
aria-labelledby="dLabelGlobalToc"><ul class="current">
|
||
<li class="toctree-l1"><a class="reference internal" href="../features.html">Features</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../installation.html">Installation</a></li>
|
||
<li class="toctree-l1 current"><a class="reference internal" href="index.html">API documentation</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../changelog.html">Change log</a></li>
|
||
</ul>
|
||
</ul>
|
||
</li>
|
||
|
||
<li class="dropdown">
|
||
<a role="button"
|
||
id="dLabelLocalToc"
|
||
data-toggle="dropdown"
|
||
data-target="#"
|
||
href="#">Page <b class="caret"></b></a>
|
||
<ul class="dropdown-menu localtoc"
|
||
role="menu"
|
||
aria-labelledby="dLabelLocalToc"><ul>
|
||
<li><a class="reference internal" href="#">Authentication</a></li>
|
||
</ul>
|
||
</ul>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
<li>
|
||
<a href="index.html" title="Previous Chapter: API documentation"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« API documentation</span>
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="configuration.html" title="Next Chapter: Configuration"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Configuration »</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
<li class="hidden-sm">
|
||
<div id="sourcelink">
|
||
<a href="../_sources/api/auth.rst.txt"
|
||
rel="nofollow">Source</a>
|
||
</div></li>
|
||
|
||
</ul>
|
||
|
||
|
||
|
||
<form class="navbar-form navbar-right" action="../search.html" method="get">
|
||
<div class="form-group">
|
||
<input type="text" name="q" class="form-control" placeholder="Search" />
|
||
</div>
|
||
<input type="hidden" name="check_keywords" value="yes" />
|
||
<input type="hidden" name="area" value="default" />
|
||
</form>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="container">
|
||
<div class="row">
|
||
<div class="body col-md-12 content" role="main">
|
||
|
||
<section id="authentication">
|
||
<h1>Authentication<a class="headerlink" href="#authentication" title="Permalink to this headline">¶</a></h1>
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-register">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/register</span></span><a class="headerlink" href="#post--api-auth-register" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>register a user</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/register</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example responses</strong>:</p>
|
||
<ul class="simple">
|
||
<li><p>successful registration</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">201</span> <span class="ne">CREATED</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"auth_token"</span><span class="p">:</span> <span class="s2">"JSON Web Token"</span><span class="p">,</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"successfully registered"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<ul class="simple">
|
||
<li><p>error on registration</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">400</span> <span class="ne">BAD REQUEST</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"Errors: email: valid email must be provided\n"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"error"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>username</strong> (<em>string</em>) – user name (3 to 12 characters required)</p></li>
|
||
<li><p><strong>email</strong> (<em>string</em>) – user email</p></li>
|
||
<li><p><strong>password</strong> (<em>string</em>) – password (8 characters required)</p></li>
|
||
<li><p><strong>password_conf</strong> (<em>string</em>) – password confirmation</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.2">201 Created</a></span> – successfully registered</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – <ul>
|
||
<li><p>invalid payload</p></li>
|
||
<li><p>sorry, that user already exists</p></li>
|
||
<li><dl class="simple">
|
||
<dt>Errors:</dt><dd><ul>
|
||
<li><p>username: 3 to 12 characters required</p></li>
|
||
<li><p>email: valid email must be provided</p></li>
|
||
<li><p>password: password and password confirmation don’t match</p></li>
|
||
<li><p>password: 8 characters required</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4">403 Forbidden</a></span> – error, registration is disabled</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-login">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/login</span></span><a class="headerlink" href="#post--api-auth-login" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>user login</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/login</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example responses</strong>:</p>
|
||
<ul class="simple">
|
||
<li><p>successful login</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"auth_token"</span><span class="p">:</span> <span class="s2">"JSON Web Token"</span><span class="p">,</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"successfully logged in"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<ul class="simple">
|
||
<li><p>error on login</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">404</span> <span class="ne">NOT FOUND</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"invalid credentials"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"error"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>email</strong> (<em>string</em>) – user email</p></li>
|
||
<li><p><strong>password_conf</strong> (<em>string</em>) – password confirmation</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – successfully logged in</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – invalid payload</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – invalid credentials</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http get">
|
||
<dt class="sig sig-object http" id="get--api-auth-logout">
|
||
<span class="sig-name descname"><span class="pre">GET</span> </span><span class="sig-name descname"><span class="pre">/api/auth/logout</span></span><a class="headerlink" href="#get--api-auth-logout" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>user logout</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">GET</span> <span class="nn">/api/auth/logout</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example responses</strong>:</p>
|
||
<ul class="simple">
|
||
<li><p>successful logout</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"successfully logged out"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<ul class="simple">
|
||
<li><p>error on login</p></li>
|
||
</ul>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">401</span> <span class="ne">UNAUTHORIZED</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"provide a valid auth token"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"error"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request Headers</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – successfully logged out</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – provide a valid auth token</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http get">
|
||
<dt class="sig sig-object http" id="get--api-auth-profile">
|
||
<span class="sig-name descname"><span class="pre">GET</span> </span><span class="sig-name descname"><span class="pre">/api/auth/profile</span></span><a class="headerlink" href="#get--api-auth-profile" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>get authenticated user info</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">GET</span> <span class="nn">/api/auth/profile</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
|
||
<span class="nt">"admin"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"bio"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"birth_date"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"created_at"</span><span class="p">:</span> <span class="s2">"Sun, 14 Jul 2019 14:09:58 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"email"</span><span class="p">:</span> <span class="s2">"sam@example.com"</span><span class="p">,</span>
|
||
<span class="nt">"first_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"imperial_units"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"language"</span><span class="p">:</span> <span class="s2">"en"</span><span class="p">,</span>
|
||
<span class="nt">"last_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"location"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"nb_sports"</span><span class="p">:</span> <span class="mi">3</span><span class="p">,</span>
|
||
<span class="nt">"nb_workouts"</span><span class="p">:</span> <span class="mi">6</span><span class="p">,</span>
|
||
<span class="nt">"picture"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"records"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">9</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"AS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"FD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">11</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"LD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="s2">"1:01:00"</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">12</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"MS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">}</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"sports_list"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="mi">1</span><span class="p">,</span>
|
||
<span class="mi">4</span><span class="p">,</span>
|
||
<span class="mi">6</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"timezone"</span><span class="p">:</span> <span class="s2">"Europe/Paris"</span><span class="p">,</span>
|
||
<span class="nt">"total_distance"</span><span class="p">:</span> <span class="mf">67.895</span><span class="p">,</span>
|
||
<span class="nt">"total_duration"</span><span class="p">:</span> <span class="s2">"6:50:27"</span><span class="p">,</span>
|
||
<span class="nt">"username"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"weekm"</span><span class="p">:</span> <span class="kc">false</span>
|
||
<span class="p">},</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request Headers</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – success.</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-profile-edit">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/profile/edit</span></span><a class="headerlink" href="#post--api-auth-profile-edit" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>edit authenticated user</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/profile/edit</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
|
||
<span class="nt">"admin"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"bio"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"birth_date"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"created_at"</span><span class="p">:</span> <span class="s2">"Sun, 14 Jul 2019 14:09:58 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"email"</span><span class="p">:</span> <span class="s2">"sam@example.com"</span><span class="p">,</span>
|
||
<span class="nt">"first_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"imperial_units"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"language"</span><span class="p">:</span> <span class="s2">"en"</span><span class="p">,</span>
|
||
<span class="nt">"last_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"location"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"nb_sports"</span><span class="p">:</span> <span class="mi">3</span><span class="p">,</span>
|
||
<span class="nt">"nb_workouts"</span><span class="p">:</span> <span class="mi">6</span><span class="p">,</span>
|
||
<span class="nt">"picture"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"records"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">9</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"AS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"FD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">11</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"LD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="s2">"1:01:00"</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">12</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"MS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">}</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"sports_list"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="mi">1</span><span class="p">,</span>
|
||
<span class="mi">4</span><span class="p">,</span>
|
||
<span class="mi">6</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"timezone"</span><span class="p">:</span> <span class="s2">"Europe/Paris"</span><span class="p">,</span>
|
||
<span class="nt">"total_distance"</span><span class="p">:</span> <span class="mf">67.895</span><span class="p">,</span>
|
||
<span class="nt">"total_duration"</span><span class="p">:</span> <span class="s2">"6:50:27"</span><span class="p">,</span>
|
||
<span class="nt">"username"</span><span class="p">:</span> <span class="nt">"sam"</span>
|
||
<span class="nt">"weekm"</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span>
|
||
<span class="p">},</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"user profile updated"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>first_name</strong> (<em>string</em>) – user first name</p></li>
|
||
<li><p><strong>last_name</strong> (<em>string</em>) – user last name</p></li>
|
||
<li><p><strong>location</strong> (<em>string</em>) – user location</p></li>
|
||
<li><p><strong>bio</strong> (<em>string</em>) – user biography</p></li>
|
||
<li><p><strong>birth_date</strong> (<em>string</em>) – user birth date (format: <code class="docutils literal notranslate"><span class="pre">%Y-%m-%d</span></code>)</p></li>
|
||
<li><p><strong>password</strong> (<em>string</em>) – user password</p></li>
|
||
<li><p><strong>password_conf</strong> (<em>string</em>) – user password confirmation</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Request Headers</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Status Codes</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – user profile updated</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – <ul>
|
||
<li><p>invalid payload</p></li>
|
||
<li><p>password: password and password confirmation don’t match</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-profile-edit-preferences">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/profile/edit/preferences</span></span><a class="headerlink" href="#post--api-auth-profile-edit-preferences" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>edit authenticated user preferences</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/profile/edit/preferences</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
|
||
<span class="nt">"admin"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"bio"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"birth_date"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"created_at"</span><span class="p">:</span> <span class="s2">"Sun, 14 Jul 2019 14:09:58 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"email"</span><span class="p">:</span> <span class="s2">"sam@example.com"</span><span class="p">,</span>
|
||
<span class="nt">"first_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"imperial_units"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"language"</span><span class="p">:</span> <span class="s2">"en"</span><span class="p">,</span>
|
||
<span class="nt">"last_name"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"location"</span><span class="p">:</span> <span class="kc">null</span><span class="p">,</span>
|
||
<span class="nt">"nb_sports"</span><span class="p">:</span> <span class="mi">3</span><span class="p">,</span>
|
||
<span class="nt">"nb_workouts"</span><span class="p">:</span> <span class="mi">6</span><span class="p">,</span>
|
||
<span class="nt">"picture"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
|
||
<span class="nt">"records"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">9</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"AS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"FD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">11</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"LD"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="s2">"1:01:00"</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">},</span>
|
||
<span class="p">{</span>
|
||
<span class="nt">"id"</span><span class="p">:</span> <span class="mi">12</span><span class="p">,</span>
|
||
<span class="nt">"record_type"</span><span class="p">:</span> <span class="s2">"MS"</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user"</span><span class="p">:</span> <span class="s2">"sam"</span><span class="p">,</span>
|
||
<span class="nt">"value"</span><span class="p">:</span> <span class="mi">18</span><span class="p">,</span>
|
||
<span class="nt">"workout_date"</span><span class="p">:</span> <span class="s2">"Sun, 07 Jul 2019 08:00:00 GMT"</span><span class="p">,</span>
|
||
<span class="nt">"workout_id"</span><span class="p">:</span> <span class="s2">"hvYBqYBRa7wwXpaStWR4V2"</span>
|
||
<span class="p">}</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"sports_list"</span><span class="p">:</span> <span class="p">[</span>
|
||
<span class="mi">1</span><span class="p">,</span>
|
||
<span class="mi">4</span><span class="p">,</span>
|
||
<span class="mi">6</span>
|
||
<span class="p">],</span>
|
||
<span class="nt">"timezone"</span><span class="p">:</span> <span class="s2">"Europe/Paris"</span><span class="p">,</span>
|
||
<span class="nt">"total_distance"</span><span class="p">:</span> <span class="mf">67.895</span><span class="p">,</span>
|
||
<span class="nt">"total_duration"</span><span class="p">:</span> <span class="s2">"6:50:27"</span><span class="p">,</span>
|
||
<span class="nt">"username"</span><span class="p">:</span> <span class="nt">"sam"</span>
|
||
<span class="nt">"weekm"</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span>
|
||
<span class="p">},</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"user preferences updated"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>timezone</strong> (<em>string</em>) – user time zone</p></li>
|
||
<li><p><strong>weekm</strong> (<em>string</em>) – does week start on Monday?</p></li>
|
||
<li><p><strong>language</strong> (<em>string</em>) – language preferences</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Request Headers</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Status Codes</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – user preferences updated</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – <ul>
|
||
<li><p>invalid payload</p></li>
|
||
<li><p>password: password and password confirmation don’t match</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-profile-edit-sports">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/profile/edit/sports</span></span><a class="headerlink" href="#post--api-auth-profile-edit-sports" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>edit authenticated user sport preferences</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/profile/edit/sports</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
|
||
<span class="nt">"color"</span><span class="p">:</span> <span class="s2">"#000000"</span><span class="p">,</span>
|
||
<span class="nt">"is_active"</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span>
|
||
<span class="nt">"sport_id"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"stopped_speed_threshold"</span><span class="p">:</span> <span class="mi">1</span><span class="p">,</span>
|
||
<span class="nt">"user_id"</span><span class="p">:</span> <span class="mi">1</span>
|
||
<span class="p">},</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"user sport preferences updated"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>color</strong> (<em>string</em>) – valid hexadecimal color</p></li>
|
||
<li><p><strong>is_active</strong> (<em>boolean</em>) – is sport available when adding a workout</p></li>
|
||
<li><p><strong>stopped_speed_threshold</strong> (<em>float</em>) – stopped speed threshold used by gpxpy</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Request Headers</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Status Codes</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – user preferences updated</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – <ul>
|
||
<li><p>invalid payload</p></li>
|
||
<li><p>invalid hexadecimal color</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-picture">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/picture</span></span><a class="headerlink" href="#post--api-auth-picture" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>update authenticated user picture</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/picture</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">multipart/form-data</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"user picture updated"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Form Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>file</strong> – image file (allowed extensions: .jpg, .png, .gif)</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Request Headers</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Status Codes</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – user picture updated</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – <ul>
|
||
<li><p>invalid payload</p></li>
|
||
<li><p>no file part</p></li>
|
||
<li><p>no selected file</p></li>
|
||
<li><p>file extension not allowed</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.14">413 Request Entity Too Large</a></span> – error during picture update: file size exceeds 1.0MB</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error during picture update</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http delete">
|
||
<dt class="sig sig-object http" id="delete--api-auth-picture">
|
||
<span class="sig-name descname"><span class="pre">DELETE</span> </span><span class="sig-name descname"><span class="pre">/api/auth/picture</span></span><a class="headerlink" href="#delete--api-auth-picture" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>delete authenticated user picture</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">DELETE</span> <span class="nn">/api/auth/picture</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">204</span> <span class="ne">NO CONTENT</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request Headers</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.5">204 No Content</a></span> – picture deleted</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – <ul>
|
||
<li><p>provide a valid auth token</p></li>
|
||
<li><p>signature expired, please log in again</p></li>
|
||
<li><p>invalid token, please log in again</p></li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error during picture deletion</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-password-reset-request">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/password/reset-request</span></span><a class="headerlink" href="#post--api-auth-password-reset-request" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>handle password reset request</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/password/reset-request</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"password reset request processed"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>email</strong> (<em>string</em>) – user email</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – password reset request processed</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – invalid payload</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="http post">
|
||
<dt class="sig sig-object http" id="post--api-auth-password-update">
|
||
<span class="sig-name descname"><span class="pre">POST</span> </span><span class="sig-name descname"><span class="pre">/api/auth/password/update</span></span><a class="headerlink" href="#post--api-auth-password-update" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>update user password</p>
|
||
<p><strong>Example request</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">POST</span> <span class="nn">/api/auth/password/update</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>Example response</strong>:</p>
|
||
<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
|
||
<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
|
||
|
||
<span class="p">{</span>
|
||
<span class="nt">"message"</span><span class="p">:</span> <span class="s2">"password updated"</span><span class="p">,</span>
|
||
<span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
|
||
<span class="p">}</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Request JSON Object</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>password</strong> (<em>string</em>) – password (8 characters required)</p></li>
|
||
<li><p><strong>password_conf</strong> (<em>string</em>) – password confirmation</p></li>
|
||
<li><p><strong>token</strong> (<em>string</em>) – password reset token</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Status Codes</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a></span> – password updated</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a></span> – invalid payload</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a></span> – invalid token, please request a new token</p></li>
|
||
<li><p><span><a class="reference external" href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a></span> – error, please try again or contact the administrator</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</section>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
<footer class="footer">
|
||
<div class="container">
|
||
<p class="pull-right">
|
||
<a href="#">Back to top</a>
|
||
|
||
</p>
|
||
<p>
|
||
© Copyright 2018 - 2021, SamR1.<br/>
|
||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 4.3.1.<br/>
|
||
</p>
|
||
</div>
|
||
</footer>
|
||
</body>
|
||
</html> |