Records may differ from records displayed by the application that originally generated the gpx files.
- Workouts list and filter. Only sports with workouts are displayed in sport dropdown.
.. note::
@ -58,6 +62,7 @@ Account & preferences
- A user can create, update and deleted his account
- A user can set language, timezone and first day of week.
- A user can reset his password (*new in 0.3.0*)
- A user can change his email address (*new in 0.6.0*)
- A user can choose between metric system and imperial system for distance, elevation and speed display (*new in 0.5.0*)
- A user can set sport preferences (*new in 0.5.0*):
- change sport color (used for sport image and charts)
@ -82,6 +87,7 @@ Administration
- maximum size of uploaded files
- maximum size of zip archive
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
- administrator email for contact (*new in 0.6.0*)
.. warning::
Updating server configuration may be necessary to handle large files (like `nginx <https://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size>`_ for instance).
@ -89,8 +95,12 @@ Administration
- **Users**
- display users list and details
- edit a user to add/remove administration rights
- display and filter users list
- edit a user to:
- add/remove administration rights
- activate his account (*new in 0.6.0*)
- update his email (in case his account is locked) (*new in 0.6.0*)
- reset his password (in case his account is locked) (*new in 0.6.0*)
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/register</span></span><aclass="headerlink"href="#post--api-auth-register"title="Permalink to this definition">¶</a></dt>
<dd><p>register a user</p>
<dd><p>register a user and send confirmation email.</p>
<p>The newly created account is inactive. The user must confirm his email
<spanclass="w"></span><spanclass="nt">"auth_token"</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s2">"JSON Web Token"</span><spanclass="p">,</span><spanclass="w"></span>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/account/confirm</span></span><aclass="headerlink"href="#post--api-auth-account-confirm"title="Permalink to this definition">¶</a></dt>
<dd><p>activate user account after registration</p>
<spanclass="w"></span><spanclass="nt">"auth_token"</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s2">"JSON Web Token"</span><spanclass="p">,</span><spanclass="w"></span>
<li><p><span><aclass="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><aclass="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>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/account/resend-confirmation</span></span><aclass="headerlink"href="#post--api-auth-account-resend-confirmation"title="Permalink to this definition">¶</a></dt>
<dd><p>resend email with instructions to confirm account</p>
<li><p><span><aclass="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><aclass="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>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/login</span></span><aclass="headerlink"href="#post--api-auth-login"title="Permalink to this definition">¶</a></dt>
<dd><p>user login</p>
<p>Only user with an active account can log in.</p>
<spanclass="sig-name descname"><spanclass="pre">GET</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/logout</span></span><aclass="headerlink"href="#get--api-auth-logout"title="Permalink to this definition">¶</a></dt>
<spanclass="w"></span><spanclass="nt">"message"</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s2">"provide a valid auth token"</span><spanclass="p">,</span><spanclass="w"></span>
<li><p><span><aclass="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>
<spanclass="sig-name descname"><spanclass="pre">GET</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/profile</span></span><aclass="headerlink"href="#get--api-auth-profile"title="Permalink to this definition">¶</a></dt>
<dd><p>get authenticated user info</p>
<dd><p>get authenticated user info (profile, account, preferences)</p>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/profile/edit</span></span><aclass="headerlink"href="#post--api-auth-profile-edit"title="Permalink to this definition">¶</a></dt>
<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: <codeclass="docutils literal notranslate"><spanclass="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>
<dtclass="field-even">Request Headers</dt>
@ -503,7 +527,6 @@
<li><p><span><aclass="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><aclass="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>
<spanclass="sig-name descname"><spanclass="pre">PATCH</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/profile/edit/account</span></span><aclass="headerlink"href="#patch--api-auth-profile-edit-account"title="Permalink to this definition">¶</a></dt>
<dd><p>update authenticated user email and password</p>
<p>It sends emails:</p>
<ulclass="simple">
<li><p>Password change</p></li>
<li><p>Email change:</p>
<ul>
<li><p>one to the current address to inform user</p></li>
<li><p>another one to the new address to confirm it.</p></li>
<li><p>signature expired, please log in again</p></li>
<li><p>invalid token, please log in again</p></li>
<li><p>invalid credentials</p></li>
</ul>
</p></li>
<li><p><span><aclass="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>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/password/update</span></span><aclass="headerlink"href="#post--api-auth-password-update"title="Permalink to this definition">¶</a></dt>
<dd><p>update user password</p>
<dd><p>update user password after password reset request</p>
<spanclass="sig-name descname"><spanclass="pre">POST</span></span><spanclass="sig-name descname"><spanclass="pre">/api/auth/email/update</span></span><aclass="headerlink"href="#post--api-auth-email-update"title="Permalink to this definition">¶</a></dt>
<li><p><span><aclass="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><aclass="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>
<li><p><strong>admin_contact</strong> (<em>string</em>) – email to contact the administrator</p></li>
<li><p><strong>gpx_limit_import</strong> (<em>integer</em>) – max number of files in zip archive</p></li>
<li><p><strong>is_registration_enabled</strong> (<em>boolean</em>) – is registration enabled ?</p></li>
<li><p><strong>max_single_file_size</strong> (<em>integer</em>) – max size of a single file</p></li>
@ -213,6 +215,7 @@
<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>
<li><p>valid email must be provided for admin contact</p></li>
</ul>
</p></li>
<li><p><span><aclass="reference external"href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4">403 Forbidden</a></span>– you do not have permissions</p></li>
<spanclass="sig-name descname"><spanclass="pre">GET</span></span><spanclass="sig-name descname"><spanclass="pre">/api/users</span></span><aclass="headerlink"href="#get--api-users"title="Permalink to this definition">¶</a></dt>
<dd><p>Get all users</p>
<dd><p>Get all users (regardless their account status), if authenticated user
has admin rights</p>
<p>It returns user preferences only for authenticated user.</p>
<spanclass="sig-name descname"><spanclass="pre">GET</span></span><spanclass="sig-name descname"><spanclass="pre">/api/users/</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="pre">user_name</span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#get--api-users-(user_name)"title="Permalink to this definition">¶</a></dt>
<dd><p>Get single user details</p>
<dd><p>Get single user details. Only user with admin rights can get user details.</p>
<p>It returns user preferences only for authenticated user.</p>
<spanclass="sig-name descname"><spanclass="pre">PATCH</span></span><spanclass="sig-name descname"><spanclass="pre">/api/users/</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="pre">user_name</span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#patch--api-users-(user_name)"title="Permalink to this definition">¶</a></dt>
<dd><p>Update user to add admin rights</p>
<dd><p>Update user account</p>
<ulclass="simple">
<li><p>add/remove admin rights (regardless user account status)</p></li>
<li><p>reset password (and send email to update user password)</p></li>
<li><p>update user email (and send email to update user password)</p></li>
<li><p>activate account for an inactive user</p></li>
</ul>
<p>Only user with admin rights can modify another user</p>
<dt>User records by sports:</dt><dd><ulclass="simple">
<li><p>average speed</p></li>
<li><p>farest distance</p></li>
<li><p>farthest distance</p></li>
<li><p>longest duration</p></li>
<li><p>maximum speed</p></li>
</ul>
</dd>
</dl>
</li>
</ul>
<divclass="admonition note">
<pclass="admonition-title">Note</p>
<p>Records may differ from records displayed by the application that originally generated the gpx files.</p>
</div>
<ulclass="simple">
<li><p>Workouts list and filter. Only sports with workouts are displayed in sport dropdown.</p></li>
</ul>
<divclass="admonition note">
@ -229,6 +235,7 @@
<li><p>A user can create, update and deleted his account</p></li>
<li><p>A user can set language, timezone and first day of week.</p></li>
<li><p>A user can reset his password (<em>new in 0.3.0</em>)</p></li>
<li><p>A user can change his email address (<em>new in 0.6.0</em>)</p></li>
<li><p>A user can choose between metric system and imperial system for distance, elevation and speed display (<em>new in 0.5.0</em>)</p></li>
<li><dlclass="simple">
<dt>A user can set sport preferences (<em>new in 0.5.0</em>):</dt><dd><ul>
@ -260,6 +267,7 @@
<li><p>maximum size of uploaded files</p></li>
<li><p>maximum size of zip archive</p></li>
<li><p>maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.</p></li>
<li><p>administrator email for contact (<em>new in 0.6.0</em>)</p></li>
</ul>
<divclass="admonition warning">
<pclass="admonition-title">Warning</p>
@ -268,8 +276,17 @@
</li>
<li><p><strong>Users</strong></p>
<ulclass="simple">
<li><p>display users list and details</p></li>
<li><p>edit a user to add/remove administration rights</p></li>
<li><p>display and filter users list</p></li>
<li><dlclass="simple">
<dt>edit a user to:</dt><dd><ul>
<li><p>add/remove administration rights</p></li>
<li><p>activate his account (<em>new in 0.6.0</em>)</p></li>
<li><p>update his email (in case his account is locked) (<em>new in 0.6.0</em>)</p></li>
<li><p>reset his password (in case his account is locked) (<em>new in 0.6.0</em>)</p></li>
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.