Authentication¶
-
-
-
-
POST
/api/auth/register
¶
+ - +POST /api/auth/register¶
register a user
Example request:
POST /api/auth/register HTTP/1.1 @@ -173,8 +173,8 @@
- Status Codes
-
-
201 Created – successfully registered
--
+
201 Created – successfully registered
+invalid payload
sorry, that user already exists
-
@@ -189,16 +189,16 @@
-403 Forbidden – error, registration is disabled
-500 Internal Server Error – error, please try again or contact the administrator
+403 Forbidden – error, registration is disabled
+500 Internal Server Error – error, please try again or contact the administrator
-
-
-
-
POST
/api/auth/login
¶
+ - +POST /api/auth/login¶
user login
Example request:
diff --git a/docs/troubleshooting/index.html b/docs/troubleshooting/index.html index 602bb428..d8de3b5a 100644 --- a/docs/troubleshooting/index.html +++ b/docs/troubleshooting/index.html @@ -7,10 +7,10 @@POST /api/auth/login HTTP/1.1 @@ -240,18 +240,18 @@
- Status Codes
-
-
200 OK – successfully logged in
-400 Bad Request – invalid payload
-401 Unauthorized – invalid credentials
-500 Internal Server Error – error, please try again or contact the administrator
+200 OK – successfully logged in
+400 Bad Request – invalid payload
+401 Unauthorized – invalid credentials
+500 Internal Server Error – error, please try again or contact the administrator
-
-
-
-
GET
/api/auth/logout
¶
+ - +GET /api/auth/logout¶
user logout
Example request:
@@ -155,7 +155,7 @@diff --git a/docs/searchindex.js b/docs/searchindex.js index c3f91065..b8e5bf1d 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["api/auth","api/configuration","api/index","api/records","api/sports","api/stats","api/users","api/workouts","changelog","features","index","installation","troubleshooting/administrator","troubleshooting/index","troubleshooting/user"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":3,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["api/auth.rst","api/configuration.rst","api/index.rst","api/records.rst","api/sports.rst","api/stats.rst","api/users.rst","api/workouts.rst","changelog.md","features.rst","index.rst","installation.rst","troubleshooting/administrator.rst","troubleshooting/index.rst","troubleshooting/user.rst"],objects:{"":{"/api/auth/login":[0,0,1,"post--api-auth-login"],"/api/auth/logout":[0,1,1,"get--api-auth-logout"],"/api/auth/password/reset-request":[0,0,1,"post--api-auth-password-reset-request"],"/api/auth/password/update":[0,0,1,"post--api-auth-password-update"],"/api/auth/picture":[0,0,1,"post--api-auth-picture"],"/api/auth/profile":[0,1,1,"get--api-auth-profile"],"/api/auth/profile/edit":[0,0,1,"post--api-auth-profile-edit"],"/api/auth/register":[0,0,1,"post--api-auth-register"],"/api/config":[1,3,1,"patch--api-config"],"/api/ping":[1,1,1,"get--api-ping"],"/api/records":[3,1,1,"get--api-records"],"/api/sports":[4,1,1,"get--api-sports"],"/api/sports/(int:sport_id)":[4,3,1,"patch--api-sports-(int-sport_id)"],"/api/stats/(user_name)/by_sport":[5,1,1,"get--api-stats-(user_name)-by_sport"],"/api/stats/(user_name)/by_time":[5,1,1,"get--api-stats-(user_name)-by_time"],"/api/stats/all":[5,1,1,"get--api-stats-all"],"/api/users":[6,1,1,"get--api-users"],"/api/users/(user_name)":[6,3,1,"patch--api-users-(user_name)"],"/api/users/(user_name)/picture":[6,1,1,"get--api-users-(user_name)-picture"],"/api/workouts":[7,0,1,"post--api-workouts"],"/api/workouts/(string:workout_short_id)":[7,3,1,"patch--api-workouts-(string-workout_short_id)"],"/api/workouts/(string:workout_short_id)/chart_data":[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data"],"/api/workouts/(string:workout_short_id)/chart_data/segment/(int:segment_id)":[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data-segment-(int-segment_id)"],"/api/workouts/(string:workout_short_id)/gpx":[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx"],"/api/workouts/(string:workout_short_id)/gpx/segment/(int:segment_id)":[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx-segment-(int-segment_id)"],"/api/workouts/map/(map_id)":[7,1,1,"get--api-workouts-map-(map_id)"],"/api/workouts/no_gpx":[7,0,1,"post--api-workouts-no_gpx"],"DEFAULT_STATICMAP \ud83c\udd95":[11,4,1,"envvar-DEFAULT_STATICMAP"],APP_LOG:[11,4,1,"-"],APP_SECRET_KEY:[11,4,1,"-"],APP_SETTINGS:[11,4,1,"-"],APP_WORKERS:[11,4,1,"-"],DATABASE_DISABLE_POOLING:[11,4,1,"-"],DATABASE_URL:[11,4,1,"-"],EMAIL_URL:[11,4,1,"-"],FLASK_APP:[11,4,1,"-"],HOST:[11,4,1,"-"],MAP_ATTRIBUTION:[11,4,1,"-"],PORT:[11,4,1,"-"],REACT_APP_ALLOW_REGISTRATION:[11,4,1,"-"],REACT_APP_API_URL:[11,4,1,"-"],REACT_APP_GPX_LIMIT_IMPORT:[11,4,1,"-"],REACT_APP_MAX_SINGLE_FILE_SIZE:[11,4,1,"-"],REACT_APP_MAX_ZIP_FILE_SIZE:[11,4,1,"-"],REACT_APP_THUNDERFOREST_API_KEY:[11,4,1,"-"],REDIS_URL:[11,4,1,"-"],SENDER_EMAIL:[11,4,1,"-"],TILE_SERVER_URL:[11,4,1,"-"],UI_URL:[11,4,1,"-"],UPLOAD_FOLDER:[11,4,1,"-"],WEATHER_API_KEY:[11,4,1,"-"],WORKERS_PROCESSES:[11,4,1,"-"]},"/api/workouts/map_tile/(s)/(z)/(x)/(y)":{png:[7,1,1,"get--api-workouts-map_tile-(s)-(z)-(x)-(y).png"]}},objnames:{"0":["http","post","HTTP post"],"1":["http","get","HTTP get"],"2":["http","delete","HTTP delete"],"3":["http","patch","HTTP patch"],"4":["std","envvar","environment variable"]},objtypes:{"0":"http:post","1":"http:get","2":"http:delete","3":"http:patch","4":"std:envvar"},terms:{"0mb":[0,7],"100":[7,9],"1000":5,"1048576":1,"10485760":1,"10mb":11,"1232004":7,"12341":5,"1234538":7,"1267":5,"127":11,"1563529507772":7,"1mb":11,"200":[0,1,3,4,5,6,7],"201":[0,7],"2017":[5,7],"2018":[5,7,10],"2019":[0,3,5,6,7,10],"2020":10,"2021":10,"204":[0,6,7],"279":7,"280":7,"282":5,"2930":7,"2e1ee2c":8,"3000":11,"301":11,"34614d5":8,"400":[0,1,4,7],"401":[0,1,3,4,5,6,7],"403":[0,1,4,5,6,7],"404":[0,4,5,6,7],"4109":7,"413":[0,7],"443":11,"465":11,"4c3fc34":8,"500":[0,1,4,6,7],"5000":11,"5078118":7,"5079733":7,"5432":11,"587":11,"613":5,"7380":7,"8025":11,"895":[0,6],"9960":5,"boolean":[1,6],"default":[5,6,7,8,11],"export":10,"float":7,"import":[8,11],"int":[4,7],"new":[0,9,11],"null":[0,6,7],"return":[3,7,11],"short":7,"static":[8,11],"true":[0,1,4,6,8,11],"try":[0,6,7],For:11,NOT:[0,4,7],Not:[4,5,6,7],One:11,The:[8,9,11],There:11,Use:8,WITH:11,With:11,__main__:11,_blank:11,access:11,account:[6,8],acit:7,activ:[4,8,9,10,11],adapt:11,add:[6,8,9,10],address:11,admin:[0,1,3,4,5,6,7,8,11],administr:[0,6,7,10,13],after:[8,11],again:[0,1,3,4,5,6,7],all:[3,4,5,6,11],allow:[0,1,7,8,10,11],along:7,alreadi:0,also:[8,10,11],alwai:11,android:10,anoth:[6,11],anymor:8,apach:10,api:[0,1,3,4,5,6,7,8,9,10,11],apikei:11,app:10,app_log:11,app_secret_kei:11,app_set:11,app_work:11,applic:[0,1,3,4,5,6,7,8,9,10,11],arch:11,archiv:[1,8,9,11],archlinux:11,asc:6,ascent:7,attribut:11,auth:[0,1,3,4,5,6,7],auth_token:0,auth_user_id:[1,3,4,5,6,7],authent:[1,2,3,4,5,6,7,10],author:[0,1,3,4,5,6,7],avail:[3,9,10,11],ave_spe:7,ave_speed_from:7,ave_speed_to:7,averag:[3,7,8,9],axi:7,b862a77:8,background:8,backup:11,bad:[0,1,4,7],bearer:[0,1,3,4,5,6,7],becom:8,been:8,befor:[8,11],begin:11,better:8,bike:[4,7,8,9],bin:11,bio:[0,6],biographi:0,birth:[0,8],birth_dat:[0,6],bound:7,build:11,by_sport:5,by_tim:5,calcul:8,calendar:[8,9],can:[6,8,9,10,11,12],cannot:8,chang:[9,10,11],charact:[0,8],chart:[7,8,9,11],chart_data:7,check:[1,11,12],choos:8,client:[8,11],client_max_body_s:11,clone:11,code:[0,1,3,4,5,6,7],color:8,com:[0,6,11],complet:8,config:[1,11],configur:[2,8,9,10,11],confirm:0,contact:[0,6,7],contain:[8,9,11],content:[0,1,3,4,5,6,7],contributor:[1,11],control:8,coordin:11,copi:[1,11],copyright:[1,11],correctli:8,creat:[0,7,8,9,11],create_app:11,created_at:[0,6],creation:[8,9],creation_d:7,credenti:[0,11],criteria:6,current:8,custom:11,cycl:[4,8,9],dai:8,dark:11,darkski:[8,9],dashboard:[8,10],data:[0,1,3,4,5,6,7,8,10,11],databas:[8,11,12],database_disable_pool:11,database_url:[8,11],date:[0,5,7,8,9],debian:11,default_staticmap:[8,11],defin:9,definit:8,delet:[0,6,7,8,9],depend:[8,11],deploy:10,desc:7,descent:7,describ:11,descript:11,detail:[6,8,10],develop:[10,11],dialect:12,differ:8,directli:11,directori:[8,11],disabl:[0,8,9,11],displai:[7,8,9,10,11,12],distanc:[3,7,8,9],distance_from:7,distance_to:7,distribut:11,docker:[8,10],document:[8,10,11],doe:[5,6,7,8],don:0,down:8,download:11,dramatiq:11,drop:8,due:8,durat:[3,7,8,9],duration_from:7,duration_to:7,dure:[0,7],easi:8,edit:[0,8,9],elev:[7,8,9,11],els:11,email:[0,6,8],email_url:11,empti:8,enabl:[1,9],encount:11,end:[5,7],endpoint:[1,2,8,13],engin:[8,11,12],english:9,enter:[8,9],entiti:[0,7],entri:11,env:11,environ:[8,10,12],error:[0,1,4,6,7,8,9,11,12],europ:[0,6],evalu:[8,11],even:[8,9],exampl:[0,1,3,4,5,6,7,10,11],exc:12,exce:[0,7],exceed:8,except:6,execstart:11,exhaust:10,exist:[0,5,6,7,9,10,11],expir:[0,1,3,4,5,6,7],extens:[0,7],fa33f4d996844a5c73ecd1ae24456ab8:7,fail:[8,13],fals:[0,1,4,6,7,11],farest:[3,8,9],featur:[10,11],fetch:11,file:[0,1,7,8,9,10,11],filter:[8,9],first:[0,10],first_nam:[0,6],fitotrack:10,fittracke:[9,11,13],fittrackee_init_data:11,fittrackee_upgrade_db:11,fittrackee_work:11,fix:10,flask:11,flask_app:11,flaticon:11,follow:[3,9,11,12],forbidden:[0,1,4,5,6,7],forecast:11,form:[0,7],format:[0,5,7],former:11,forrunn:10,forward:11,found:[0,4,5,6,7],frame:5,freepik:11,french:[9,10],fri:7,from:[1,3,4,5,6,7,8,10],fullchain:11,gener:[8,11],get:[0,1,3,4,5,6,7],gif:0,git:11,github:11,given:11,gmt:[0,3,6,7],gpl:10,gpx:[7,8,9,10,11],gpx_limit_import:1,gpxpy:11,grant:11,greater:8,gunicorn:[11,12],handl:[0,9,11],has:6,has_workout:4,have:[1,4,5,6,7,8],header:[0,1,3,4,5,6,7],health:1,heavi:[10,11],hike:[4,8,9],his:[6,8,9],home:11,host:11,href:[1,11],http:[0,1,3,4,5,6,7,11],hvybqybra7wwxpastwr4v2:[0,3,6],i18n:8,icon:11,imag:[0,6,7,8,11],img:4,improv:10,incorrect:8,index:7,info:0,inform:[8,10,11],init:11,initi:11,initialis:11,insid:11,instal:[8,10],instanc:[1,9,11],integ:[1,3,4,5,6,7],interceptor:8,interfac:11,intern:[0,1,4,6,7],introduc:8,invalid:[0,1,3,4,5,6,7,8],is_act:4,is_registration_en:1,issu:[10,11],jan:7,javascript:8,john_do:6,jpeg:6,jpg:0,json:[0,1,3,4,5,6,7],jul:[0,3,6,7],keep:[8,10,11],kei:[8,9,11],kjxavsturjvoah2wvcegef:7,label:4,languag:[0,6],larg:[0,7,9],larger:11,last:[0,11],last_nam:[0,6],latitud:7,layer:[8,11],leaflet:[7,11],least:[7,11],less:8,librari:11,licens:10,like:9,limit:[8,9],link:11,linux:11,list:[8,10,11],listen:11,load:[8,12],local:[8,10,11],localhost:11,locat:[0,6,11],log:[0,1,3,4,5,6,7,10,11,12],logfil:11,login:0,logout:[0,8],longer:[8,12],longest:[3,8,9],longitud:7,made:11,mai:[9,10,11],mailhog:11,major:8,make:[8,11],makefil:11,manag:8,mandatori:[7,8,11],map:[7,8,9,10],map_attribut:[1,11],map_id:7,map_til:7,match:0,max:[1,6,7,8],max_alt:7,max_single_file_s:1,max_spe:7,max_speed_from:7,max_speed_to:7,max_us:1,max_zip_file_s:1,maxim:7,maximum:[3,8,9,11],messag:[0,1,7,8],method:11,min_alt:7,minim:7,minor:10,mobil:10,model:8,modifi:[6,8],modification_d:7,modul:11,mon:7,mondai:[5,9],montain:[8,9],month:[5,8,9],more:[8,9,10,11],morn:7,mountain:4,mous:8,move:[7,8],mpwoadmin:11,multi:11,multipart:[0,7],must:[0,1,4,8,9,11,12],name:[0,5,6,11],nano:11,nb_sport:[0,6],nb_workout:[0,5,6],necessari:[9,11],need:11,network:11,next_workout:7,nginx:[9,11],no_gpx:7,non:[4,10],noopen:11,noreferr:11,nosuchmoduleerror:12,note:[7,8,9,11],now:[8,9,11],number:[1,6,7,8,9,11],oauth:[0,1,3,4,5,6,7],object:[0,1,4,6,7],one:[6,7],onli:[6,7,8,9,11],open:[10,11],openstreetmap:[1,8,11],opentrack:10,option:11,order:[6,7,8],order_bi:6,org:[1,11],other:[6,11],out:0,outdoor:[8,10,11],over:8,overwrit:11,own:[6,10],owner:[8,9],packag:[8,11],page:[6,7],pagin:[6,7],par_pag:6,paramet:[0,1,3,4,5,6,7,8,9,11],pari:[0,6],pars:11,part:[0,7],pass:11,password:[0,8,9,11],password_conf:0,patch:[1,4,6,7],path:11,paus:[7,8],payload:[0,1,4,7],pem:11,per:[6,7,8],per_pag:[6,7],permiss:[1,4,5,6,7],pg_dump:11,pictur:[0,6,7,11],ping:1,pip:11,pipenv:8,pleas:[0,1,3,4,5,6,7,8],plugin:12,png:[0,4,7,11],poetri:[8,11],point:[8,11],pong:1,pool:11,port:11,possibl:[8,10],post:[0,7],postgr:[8,12],postgresql:[8,11,12],prerequisit:10,previous_workout:7,prior:11,privileg:11,privkei:11,process:[0,9,11],productionconfig:11,profil:0,project:11,provid:[0,1,3,4,5,6,7,8,9,11],proxi:11,proxy_add_x_forwarded_for:11,proxy_pass:11,proxy_redirect:11,proxy_set_head:11,pull:11,purpos:[8,11],pwd:11,pypi:10,python:[8,11],queri:[5,6,7],queue:11,rais:9,react:11,react_app_allow_registr:11,react_app_api_url:11,react_app_gpx_limit_import:11,react_app_max_single_file_s:11,react_app_max_zip_file_s:11,react_app_thunderforest_api_kei:11,read:8,real:11,rebuild:8,rechart:7,recommend:11,record:[0,2,6,7,8,9,10],record_typ:[0,3,6,7],redi:[8,11],redis_url:11,refactor:8,regist:[0,1,11],registr:[0,1,8,9],rel:11,relat:11,releas:[10,11],remain:8,remote_addr:11,remov:9,renam:8,replac:[8,11],repo:11,repositori:11,request:[0,1,3,4,5,6,7],request_uri:11,requir:0,reset:[0,8,9],respons:[0,1,3,4,5,6,7],restart:11,restartsec:11,right:[6,8,9],rout:8,run:[4,8,9,11],runner:10,sam:[0,6],same:8,samr1:11,sat:6,save:[8,9],schema:11,search:8,second:7,secret:11,see:[8,9,10,11],segment:[7,8,9],segment_id:7,select:[0,7],send:[8,11],sender:11,sender_email:11,serv:11,server:[0,1,4,6,7,8,9,10],server_nam:11,servic:11,set:[8,9],sever:[10,11],shell:11,should:11,show:8,shown:8,side:8,signatur:[0,1,3,4,5,6,7],simpl:11,simplifi:8,sinc:11,singl:[1,6],size:[0,1,7,8,9,11],sky:11,smtp:11,some:[6,7,8,10,11],sorri:0,sort:[6,7],sourc:10,spawn:11,speed:[3,7,8,9,11],spinner:8,sport:[2,5,7,8,9,10,11],sport_id:[0,3,4,5,6,7],sports_list:[0,6],sql:11,sqlalchemi:[8,11,12],ssl:11,ssl_certif:11,ssl_certificate_kei:11,standard:[8,11],standarderror:11,standardoutput:11,start:[5,7,8,9,11,13],startlimitintervalsec:11,starttl:11,stat:[5,8],staticmap:11,statist:[2,10],statu:[0,1,3,4,5,6,7],step:11,still:10,stop:11,store:[10,11],street:10,string:[0,4,5,6,7],subdomain:7,success:[0,1,3,4,5,6,7],successfulli:0,sun:[0,3,6,7],sundai:[5,7,9],support:[8,9,12],syslog:11,syslogidentifi:11,system:11,systemd:11,tar:11,target:11,task:11,term:[8,11],test:11,textarea:8,than:8,thei:11,them:10,thi:[7,8,9,10,11],thunderforest:[8,11],tile:[7,8],tile_server_url:11,time:[5,7,8,9],timezon:[0,6,8],titl:7,tls:11,todo:14,token:[0,1,3,4,5,6,7],too:[0,7],tool:11,tooltip:8,total:8,total_dist:[0,5,6],total_dur:[0,5,6],track:10,transport:[4,8,9],troubleshoot:10,type:[0,1,3,4,5,6,7,11],typescript:11,ui_url:11,unauthor:[0,1,3,4,5,6,7],under:[10,11],unencrypt:11,unit:11,unreleas:10,unstabl:[10,11],updat:[0,1,4,6,7,8,9,11],upload:[8,9,11],upload_fold:11,uploads_dir_s:5,url:[8,11,12],use:11,used:[8,11],user:[0,1,2,3,4,5,7,8,9,10,11,13],user_nam:[5,6],usernam:[0,6,11],using:[6,7,8,10,11],uuid:[7,8],valid:[0,1,3,4,5,6,7,11],valu:[0,3,6,7],variabl:[8,10,12],venv:11,version:[1,10,11],view:8,virtualenv:11,vue3:11,vuex:11,wai:11,walk:[4,8,9],wantedbi:11,warn:8,weather:[8,9,11],weather_api:11,weather_api_kei:11,weather_end:7,weather_start:7,web:[0,1,3,4,5,6,7,10,11],week:[5,8,9],weekend:8,weekm:[0,5],were:8,wget:11,when:[1,8,11],where:11,which:9,with_gpx:7,without:[5,6,7,8,9,10],worker:11,workers_process:11,workingdirectori:11,workout:[2,5,8,10],workout_d:[0,3,6,7],workout_id:[0,3,6,7],workout_short_id:7,workouts_count:6,written:11,www:[1,11],xxxx:11,xzf:11,yai:11,yarn:11,year:5,yet:10,you:[1,4,5,6,7,10],your:[6,10,11],zip:[1,7,8,9,11],zoom:7},titles:["Authentication","Configuration","API documentation","Records","Sports","Statistics","Users","Workouts","Change log","Features","FitTrackee","Installation","Administrator","Troubleshooting","User"],titleterms:{"2018":8,"2019":8,"2020":8,"2021":8,"new":8,account:9,administr:[8,9,12],api:2,authent:0,avail:8,bug:8,chang:8,close:8,configur:1,content:10,dashboard:9,deploy:11,deprec:11,detail:9,dev:11,docker:11,document:2,email:11,environ:11,fail:12,featur:[8,9],first:8,fittracke:[8,10,12],fix:8,french:8,from:11,improv:8,instal:11,issu:8,list:9,log:8,map:11,minor:8,misc:8,prerequisit:11,prod:11,product:11,pypi:[8,11],record:3,releas:8,server:11,sourc:11,sport:4,start:12,statist:[5,8,9],tabl:10,tile:11,translat:9,troubleshoot:13,unreleas:8,upgrad:11,user:[6,14],variabl:11,version:8,workout:[7,9]}}) \ No newline at end of file +Search.setIndex({docnames:["api/auth","api/configuration","api/index","api/records","api/sports","api/stats","api/users","api/workouts","changelog","features","index","installation","troubleshooting/administrator","troubleshooting/index","troubleshooting/user"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["api/auth.rst","api/configuration.rst","api/index.rst","api/records.rst","api/sports.rst","api/stats.rst","api/users.rst","api/workouts.rst","changelog.md","features.rst","index.rst","installation.rst","troubleshooting/administrator.rst","troubleshooting/index.rst","troubleshooting/user.rst"],objects:{"":{"/api/auth/login":[0,0,1,"post--api-auth-login"],"/api/auth/logout":[0,1,1,"get--api-auth-logout"],"/api/auth/password/reset-request":[0,0,1,"post--api-auth-password-reset-request"],"/api/auth/password/update":[0,0,1,"post--api-auth-password-update"],"/api/auth/picture":[0,0,1,"post--api-auth-picture"],"/api/auth/profile":[0,1,1,"get--api-auth-profile"],"/api/auth/profile/edit":[0,0,1,"post--api-auth-profile-edit"],"/api/auth/register":[0,0,1,"post--api-auth-register"],"/api/config":[1,3,1,"patch--api-config"],"/api/ping":[1,1,1,"get--api-ping"],"/api/records":[3,1,1,"get--api-records"],"/api/sports":[4,1,1,"get--api-sports"],"/api/sports/(int:sport_id)":[4,3,1,"patch--api-sports-(int-sport_id)"],"/api/stats/(user_name)/by_sport":[5,1,1,"get--api-stats-(user_name)-by_sport"],"/api/stats/(user_name)/by_time":[5,1,1,"get--api-stats-(user_name)-by_time"],"/api/stats/all":[5,1,1,"get--api-stats-all"],"/api/users":[6,1,1,"get--api-users"],"/api/users/(user_name)":[6,3,1,"patch--api-users-(user_name)"],"/api/users/(user_name)/picture":[6,1,1,"get--api-users-(user_name)-picture"],"/api/workouts":[7,0,1,"post--api-workouts"],"/api/workouts/(string:workout_short_id)":[7,3,1,"patch--api-workouts-(string-workout_short_id)"],"/api/workouts/(string:workout_short_id)/chart_data":[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data"],"/api/workouts/(string:workout_short_id)/chart_data/segment/(int:segment_id)":[7,1,1,"get--api-workouts-(string-workout_short_id)-chart_data-segment-(int-segment_id)"],"/api/workouts/(string:workout_short_id)/gpx":[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx"],"/api/workouts/(string:workout_short_id)/gpx/segment/(int:segment_id)":[7,1,1,"get--api-workouts-(string-workout_short_id)-gpx-segment-(int-segment_id)"],"/api/workouts/map/(map_id)":[7,1,1,"get--api-workouts-map-(map_id)"],"/api/workouts/no_gpx":[7,0,1,"post--api-workouts-no_gpx"],"DEFAULT_STATICMAP \ud83c\udd95":[11,4,1,"envvar-DEFAULT_STATICMAP"],APP_LOG:[11,4,1,"-"],APP_SECRET_KEY:[11,4,1,"-"],APP_SETTINGS:[11,4,1,"-"],APP_WORKERS:[11,4,1,"-"],DATABASE_DISABLE_POOLING:[11,4,1,"-"],DATABASE_URL:[11,4,1,"-"],EMAIL_URL:[11,4,1,"-"],FLASK_APP:[11,4,1,"-"],HOST:[11,4,1,"-"],MAP_ATTRIBUTION:[11,4,1,"-"],PORT:[11,4,1,"-"],REACT_APP_ALLOW_REGISTRATION:[11,4,1,"-"],REACT_APP_API_URL:[11,4,1,"-"],REACT_APP_GPX_LIMIT_IMPORT:[11,4,1,"-"],REACT_APP_MAX_SINGLE_FILE_SIZE:[11,4,1,"-"],REACT_APP_MAX_ZIP_FILE_SIZE:[11,4,1,"-"],REACT_APP_THUNDERFOREST_API_KEY:[11,4,1,"-"],REDIS_URL:[11,4,1,"-"],SENDER_EMAIL:[11,4,1,"-"],TILE_SERVER_URL:[11,4,1,"-"],UI_URL:[11,4,1,"-"],UPLOAD_FOLDER:[11,4,1,"-"],WEATHER_API_KEY:[11,4,1,"-"],WORKERS_PROCESSES:[11,4,1,"-"]},"/api/workouts/map_tile/(s)/(z)/(x)/(y)":{png:[7,1,1,"get--api-workouts-map_tile-(s)-(z)-(x)-(y).png"]}},objnames:{"0":["http","post","HTTP post"],"1":["http","get","HTTP get"],"2":["http","delete","HTTP delete"],"3":["http","patch","HTTP patch"],"4":["std","envvar","environment variable"]},objtypes:{"0":"http:post","1":"http:get","2":"http:delete","3":"http:patch","4":"std:envvar"},terms:{"0":[0,1,3,4,5,6,7,9,10,11],"00":[0,3,6,7],"01":[0,3,5,6,7,10],"02":[7,10],"03":[6,7,10],"04":[7,10],"06":5,"07":[0,3,6,7,10],"08":[0,3,6],"09":[0,6,10],"0mb":[0,7],"1":[0,1,3,4,5,6,7,10,11],"10":[0,1,3,6,7,10,11],"100":[7,9],"1000":5,"104":8,"1048576":1,"10485760":1,"10mb":11,"11":[0,3,6,8,9],"12":[0,3,6,7,10],"1232004":7,"12341":5,"1234538":7,"1267":5,"127":11,"13":[7,8],"14":[0,6,7,8],"15":[5,7,10],"150":5,"156":5,"1563529507772":7,"16":[7,10],"17":[7,10,11],"178":5,"18":[0,3,6,7,8],"19":10,"1mb":11,"2":[0,1,3,4,5,6,7,10,11],"20":6,"200":[0,1,3,4,5,6,7],"201":[0,7],"2017":[5,7],"2018":[5,7,10],"2019":[0,3,5,6,7,10],"2020":10,"2021":10,"203":5,"204":[0,6,7],"21":10,"22":[7,8],"23":10,"24":8,"25":[8,11],"26":8,"27":[0,6],"279":7,"28":8,"280":7,"282":5,"29":10,"2930":7,"2e1ee2c":8,"3":[0,4,5,6,7,9,10,11],"30":[5,10],"3000":11,"301":11,"31":[7,10],"33":8,"34":8,"34614d5":8,"36":8,"37":8,"39":7,"4":[0,4,6,7,10,11],"40":8,"400":[0,1,4,7],"401":[0,1,3,4,5,6,7],"403":[0,1,4,5,6,7],"404":[0,4,5,6,7],"41":8,"4109":7,"413":[0,7],"43":8,"44":[7,8],"443":11,"45":7,"46":[5,8],"465":11,"47":[5,7,8],"4c3fc34":8,"5":[1,4,5,6,7,9,10],"50":[0,6,8],"500":[0,1,4,6,7],"5000":11,"5078118":7,"5079733":7,"51":7,"53":8,"54":8,"5432":11,"57":[7,8],"58":[0,6,8],"587":11,"59":8,"6":[0,4,6,7,10],"613":5,"62":8,"63":7,"64":8,"66":8,"67":[0,6],"7":[7,10,11],"70":8,"71":8,"72":8,"7380":7,"75":8,"78":5,"79":8,"8":[0,7,10],"80":[8,11],"8025":11,"81":8,"82":8,"83":8,"84":8,"895":[0,6],"9":[0,3,6,10,11],"93":8,"9960":5,"boolean":[1,6],"default":[5,6,7,8,11],"do":[1,4,5,6,7],"export":10,"float":7,"import":[8,11],"int":[4,7],"new":[0,9,11],"null":[0,6,7],"return":[3,7,11],"short":7,"static":[8,11],"switch":8,"true":[0,1,4,6,8,11],"try":[0,6,7],A:[6,8,9],AS:[0,3,6,7],For:11,If:[9,11],In:8,It:[8,10,12],NO:[0,6,7],NOT:[0,4,7],No:[0,6,7,8,10],Not:[4,5,6,7],OF:11,ON:11,On:11,One:11,TO:11,The:[8,9,11],There:11,To:11,WITH:11,With:11,__main__:11,_blank:11,access:11,account:[6,8],acit:7,activ:[4,8,9,10,11],adapt:11,add:[6,8,9,10],address:11,admin:[0,1,3,4,5,6,7,8,11],administr:[0,6,7,10,13],after:[8,11],again:[0,1,3,4,5,6,7],agplv3:8,all:[3,4,5,6,11],allow:[0,1,7,8,10,11],along:7,alpin:9,alreadi:0,also:[8,10,11],alwai:11,an:[1,4,6,7,8,9,11],android:10,anoth:[6,11],anymor:8,apach:10,api:[0,1,3,4,5,6,7,8,9,10,11],apikei:11,app:[10,11],app_log:11,app_secret_kei:11,app_set:11,app_work:11,applic:[0,1,3,4,5,6,7,8,9,10,11],ar:[3,7,8,9,10,11,12],arch:11,archiv:[1,8,9,11],archlinux:11,asc:6,ascent:7,attribut:11,auth:[0,1,3,4,5,6,7],auth_token:0,auth_user_id:[1,3,4,5,6,7],authent:[1,2,3,4,5,6,7,10],author:[0,1,3,4,5,6,7],avail:[3,9,10,11],ave_spe:7,ave_speed_from:7,ave_speed_to:7,averag:[3,7,8,9],axi:7,b862a77:8,b:11,background:8,backup:11,bad:[0,1,4,7],bearer:[0,1,3,4,5,6,7],becom:8,been:8,befor:[8,11],begin:11,better:8,bike:[4,7,8,9],bin:11,bio:[0,6],biographi:0,birth:[0,8],birth_dat:[0,6],bound:7,build:11,by_sport:5,by_tim:5,c:7,calcul:8,calendar:[8,9],can:[6,8,9,10,11,12],cannot:8,cd:11,chang:[9,10,11],charact:[0,8],chart:[7,8,9,11],chart_data:7,check:[1,11,12],choos:8,client:8,client_max_body_s:11,clone:11,code:[0,1,3,4,5,6,7],color:8,com:[0,6,11],complet:8,config:[1,11],configur:[2,8,9,10,11],confirm:0,contact:[0,6,7],contain:[8,9,11],content:[0,1,3,4,5,6,7],contributor:[1,11],control:8,coordin:11,copi:[1,11],copyright:[1,11],correctli:8,countri:9,cp:11,creat:[0,7,8,9,11],create_app:11,created_at:[0,6],creation:[8,9],creation_d:7,credenti:[0,11],criteria:6,cross:9,current:8,custom:11,cycl:[4,8,9],d:[0,5,7],dai:8,dark:11,darkski:[8,9],dashboard:[8,10],data:[0,1,3,4,5,6,7,8,10,11],databas:[8,11,12],database_disable_pool:11,database_url:[8,11],date:[0,5,7,8,9],db:11,debian:11,default_staticmap:[8,11],defin:9,definit:8,delet:[0,6,7,8,9],depend:[8,11],deploy:10,desc:7,descent:7,describ:11,descript:11,detail:[6,8,10],develop:10,dialect:12,differ:8,directli:11,directori:[8,11],disabl:[0,8,9,11],displai:[7,8,9,10,11,12],distanc:[3,7,8,9],distance_from:7,distance_to:7,distribut:11,docker:[8,10],document:[8,10,11],doe:[5,6,7,8],don:0,down:8,download:11,dramatiq:11,drop:8,due:8,durat:[3,7,8,9],duration_from:7,duration_to:7,dure:[0,7],easi:8,edit:[0,8,9],electr:9,elev:[7,8,9,11],els:11,email:[0,6,8],email_url:11,empti:8,en:[0,6],enabl:[1,9],encount:11,end:[5,7],endpoint:[1,8],engin:[8,11,12],english:9,enter:[8,9],entiti:[0,7],entri:11,env:11,environ:[8,10,12],error:[0,1,4,6,7,8,9,11,12],europ:[0,6],evalu:[8,11],even:[8,9],exampl:[0,1,3,4,5,6,7,10,11],exc:12,exce:[0,7],exceed:8,except:6,execstart:11,exhaust:10,exist:[0,5,6,7,9,10,11],expir:[0,1,3,4,5,6,7],extens:[0,7],fa33f4d996844a5c73ecd1ae24456ab8:7,fail:[8,13],fals:[0,1,4,6,7,11],farest:[3,8,9],fd:[0,3,6,7],featur:[10,11],fetch:11,file:[0,1,7,8,9,10,11],filter:[8,9],first:[0,10],first_nam:[0,6],fitotrack:10,fittracke:[9,11,13],fittrackee_cli:11,fittrackee_init_data:11,fittrackee_upgrade_db:11,fittrackee_work:11,fix:10,flask:11,flask_app:11,flaticon:11,follow:[3,9,11,12],forbidden:[0,1,4,5,6,7],forecast:11,form:[0,7],format:[0,5,7],former:11,forrunn:10,forward:11,found:[0,4,5,6,7],fr:6,frame:5,freepik:11,french:[9,10],fri:7,from:[1,3,4,5,6,7,8,10],fullchain:11,gener:[8,11],get:[0,1,3,4,5,6,7],gif:0,git:11,github:11,given:11,gmt:[0,3,6,7],gpl:10,gpx:[7,8,9,10,11],gpx_limit_import:1,gpxpy:11,grant:11,greater:8,gunicorn:[11,12],gz:11,h:7,ha:6,handl:[0,9,11],has_workout:4,have:[1,4,5,6,7,8],he:6,header:[0,1,3,4,5,6,7],health:1,heavi:[10,11],hi:[6,8,9],hike:[4,8,9],home:11,host:11,href:[1,11],http:[0,1,3,4,5,6,7,11],hvybqybra7wwxpastwr4v2:[0,3,6],i18n:8,icon:11,id:[0,1,3,4,5,6,7],imag:[0,6,7,8,11],img:4,improv:10,incorrect:8,index:7,info:0,inform:[8,10,11],init:11,initi:11,initialis:11,insid:11,instal:[8,10],instanc:[1,9,11],integ:[1,3,4,5,6,7],interceptor:8,interfac:11,intern:[0,1,4,6,7],introduc:8,invalid:[0,1,3,4,5,6,7,8],io:11,ip:11,is_act:4,is_registration_en:1,issu:[10,11],jan:7,javascript:8,john_do:6,jpeg:6,jpg:0,js:11,json:[0,1,3,4,5,6,7],jul:[0,3,6,7],keep:[8,10,11],kei:[8,9,11],kjxavsturjvoah2wvcegef:7,km:7,label:4,languag:[0,6],larg:[0,7,9],larger:11,last:[0,11],last_nam:[0,6],latitud:7,layer:[8,11],ld:[0,3,6,7],leaflet:[7,11],least:7,less:8,librari:11,licens:[8,10],like:9,limit:[8,9],link:11,linux:11,list:[8,10,11],listen:11,load:[8,12],local:[8,10,11],localhost:11,locat:[0,6,11],log:[0,1,3,4,5,6,7,10,11,12],logfil:11,login:0,logout:[0,8],longer:[8,12],longest:[3,8,9],longitud:7,m:[0,5,7],made:11,mai:[9,10,11],mailhog:11,major:8,make:[8,11],makefil:11,manag:8,mandatori:[7,8,11],map:[7,8,9,10],map_attribut:[1,11],map_id:7,map_til:7,match:0,max:[1,6,7,8],max_alt:7,max_single_file_s:1,max_spe:7,max_speed_from:7,max_speed_to:7,max_us:1,max_zip_file_s:1,maxim:7,maximum:[3,8,9,11],messag:[0,1,7,8],method:11,min_alt:7,minim:7,minor:10,mobil:10,model:8,modifi:[6,8],modification_d:7,modul:11,mon:7,mondai:[5,9],montain:8,month:[5,8,9],more:[8,9,10,11],morn:7,mountain:[4,9],mous:8,move:[7,8],mpwoadmin:11,ms:[0,3,6,7],multi:11,multipart:[0,7],must:[0,1,4,8,9,11,12],mv:11,n:0,name:[0,5,6,11],nano:11,nb_sport:[0,6],nb_workout:[0,5,6],necessari:[9,11],need:11,network:11,next_workout:7,nginx:[9,11],no_gpx:7,non:[4,10],noopen:11,noreferr:11,nosuchmoduleerror:12,note:[7,8,9,11],now:[8,9,11],number:[1,6,7,8,9,11],oauth:[0,1,3,4,5,6,7],object:[0,1,4,6,7],ok:[0,1,3,4,5,6,7],one:[6,7],onli:[6,7,8,9,11],open:[10,11],openstreetmap:[1,8,11],opentrack:10,option:11,order:[6,7,8,11],order_bi:6,org:[1,11],os:11,other:[6,11],out:0,outdoor:[8,10,11],over:8,overwrit:11,own:[6,10],owner:[8,9],packag:[8,11],page:[6,7],pagin:[6,7],par_pag:6,paramet:[0,1,3,4,5,6,7,8,9,11],pari:[0,6],pars:11,part:[0,7],pass:11,password:[0,8,9,11],password_conf:0,patch:[1,4,6,7],path:11,paus:[7,8],payload:[0,1,4,7],pem:11,per:[6,7,8],per_pag:[6,7],permiss:[1,4,5,6,7],pg_dump:11,pictur:[0,6,7,11],ping:1,pip:11,pipenv:8,pleas:[0,1,3,4,5,6,7,8],plugin:12,png:[0,4,7,11],poetri:[8,11],point:[8,11],pong:1,pool:11,port:11,possibl:[8,10],post:[0,7],postgr:[8,12],postgresql:[8,11,12],prerequisit:10,previous_workout:7,prior:11,privileg:11,privkei:11,process:[0,9,11],productionconfig:11,profil:0,project:11,provid:[0,1,3,4,5,6,7,8,9,11],proxi:11,proxy_add_x_forwarded_for:11,proxy_pass:11,proxy_redirect:11,proxy_set_head:11,pull:11,purpos:[8,11],pwd:11,py:11,pypi:10,python:[8,11],q:6,queri:[5,6,7],queue:11,r:11,rais:9,react:11,react_app_allow_registr:11,react_app_api_url:11,react_app_gpx_limit_import:11,react_app_max_single_file_s:11,react_app_max_zip_file_s:11,react_app_thunderforest_api_kei:11,read:8,real:11,rebuild:8,rechart:7,recommend:11,record:[0,2,6,7,8,9,10],record_typ:[0,3,6,7],redi:[8,11],redis_url:11,refactor:8,regist:[0,1,11],registr:[0,1,8,9],rel:11,relat:11,releas:[10,11],remain:8,remote_addr:11,remov:9,renam:8,replac:[8,11],repo:11,repositori:11,request:[0,1,3,4,5,6,7],request_uri:11,requir:0,reset:[0,8,9],respons:[0,1,3,4,5,6,7],restart:11,restartsec:11,right:[6,8,9],rout:8,row:9,run:[4,8,9,11],runner:10,s:[6,7,8,11],sam:[0,6],same:8,samr1:11,sat:6,save:[8,9],schema:11,search:8,second:7,secret:11,see:[8,9,10,11],segment:[7,8,9],segment_id:7,select:[0,7],send:[8,11],sender:11,sender_email:11,serv:11,server:[0,1,4,6,7,8,9,10],server_nam:11,servic:11,set:[8,9],sever:[10,11],shell:11,should:11,show:8,shown:8,side:8,signatur:[0,1,3,4,5,6,7],simpl:11,simplifi:8,sinc:11,singl:[1,6],size:[0,1,7,8,9,11],ski:9,sky:11,smtp:11,some:[6,7,8,10,11],sorri:0,sort:[6,7],sourc:10,spawn:11,speed:[3,7,8,9,11],spinner:8,sport:[2,5,7,8,9,10,11],sport_id:[0,3,4,5,6,7],sports_list:[0,6],sql:11,sqlalchemi:[8,11,12],ssl:11,ssl_certif:11,ssl_certificate_kei:11,standard:[8,11],standarderror:11,standardoutput:11,start:[5,7,8,9,11,13],startlimitintervalsec:11,starttl:11,stat:[5,8],staticmap:11,statist:[2,10],statu:[0,1,3,4,5,6,7],step:11,still:10,stop:11,store:[10,11],street:10,string:[0,4,5,6,7],subdomain:7,success:[0,1,3,4,5,6,7],successfulli:0,sun:[0,3,6,7],sundai:[5,7,9],support:[8,9,12],syslog:11,syslogidentifi:11,system:11,systemd:11,t:[0,12],tar:11,target:11,task:11,term:[8,11],test:11,textarea:8,than:8,thei:11,them:10,thi:[7,8,9,10,11],thunderforest:[8,11],tile:[7,8],tile_server_url:11,time:[5,7,8,9],timezon:[0,6,8],titl:7,tl:11,todo:14,token:[0,1,3,4,5,6,7],too:[0,7],tool:11,tooltip:8,total:8,total_asc:5,total_dist:[0,5,6],total_dur:[0,5,6],track:10,trail:9,transport:[4,8,9],troubleshoot:10,type:[0,1,3,4,5,6,7,11],typescript:11,u:11,ui:8,ui_url:11,unauthor:[0,1,3,4,5,6,7],under:[10,11],unencrypt:11,unit:11,unreleas:10,unstabl:[10,11],up:[9,10],updat:[0,1,4,6,7,8,9,11],upload:[8,9,11],upload_fold:11,uploads_dir_s:5,url:[8,11,12],us:[6,7,8,10,11],user:[0,1,2,3,4,5,7,8,9,10,11,13],user_nam:[5,6],usernam:[0,6,11],uuid:[7,8],v0:11,v3:10,valid:[0,1,3,4,5,6,7,11],valu:[0,3,6,7],variabl:[8,10,12],venv:11,version:[1,10,11],view:8,virtualenv:11,vue3:11,vuex:11,wa:8,wai:11,walk:[4,8,9],wantedbi:11,warn:8,weather:[8,9,11],weather_api:11,weather_api_kei:11,weather_end:7,weather_start:7,web:[0,1,3,4,5,6,7,10,11],week:[5,8,9],weekend:8,weekm:[0,5],were:8,wget:11,when:[1,8,11],where:11,which:9,with_gpx:7,without:[5,6,7,8,9,10],worker:11,workers_process:11,workingdirectori:11,workout:[2,5,8,10],workout_d:[0,3,6,7],workout_id:[0,3,6,7],workout_short_id:7,workouts_count:6,written:11,www:[1,11],x:[7,11],xxxx:11,xzf:11,y:[0,5,7,11],yai:11,yarn:11,year:5,yet:10,you:[1,4,5,6,7,10],your:[6,10,11],z:[7,11],zip:[1,7,8,9,11],zoom:7},titles:["Authentication","Configuration","API documentation","Records","Sports","Statistics","Users","Workouts","Change log","Features","FitTrackee","Installation","Administrator","Troubleshooting","User"],titleterms:{"0":8,"01":8,"02":8,"03":8,"04":8,"07":8,"09":8,"1":8,"10":8,"12":8,"15":8,"16":8,"17":8,"19":8,"2":8,"2018":8,"2019":8,"2020":8,"2021":8,"21":8,"23":8,"29":8,"3":8,"30":8,"31":8,"4":8,"5":8,"6":8,"7":8,"8":8,"9":8,"new":8,account:9,administr:[8,9,12],api:2,authent:0,avail:8,bug:8,chang:8,client:11,close:8,configur:1,content:10,dashboard:9,deploy:11,deprec:11,detail:9,dev:11,develop:11,docker:11,document:2,email:11,endpoint:[2,13],environ:11,fail:12,featur:[8,9],first:8,fittracke:[8,10,12],fix:8,french:8,from:11,improv:8,instal:11,issu:8,list:9,log:8,map:11,minor:8,misc:8,prerequisit:11,prod:11,product:11,pull:8,pypi:[8,11],record:3,releas:8,request:8,server:11,sourc:11,sport:4,start:12,statist:[5,8,9],tabl:10,tile:11,translat:9,troubleshoot:13,unreleas:8,upgrad:11,user:[6,14],variabl:11,version:8,workout:[7,9]}}) \ No newline at end of file diff --git a/docs/troubleshooting/administrator.html b/docs/troubleshooting/administrator.html index dc221722..3bb73b01 100644 --- a/docs/troubleshooting/administrator.html +++ b/docs/troubleshooting/administrator.html @@ -7,10 +7,10 @@GET /api/auth/logout HTTP/1.1 @@ -286,21 +286,21 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – successfully logged out
-401 Unauthorized – provide a valid auth token
+200 OK – successfully logged out
+401 Unauthorized – provide a valid auth token
-
-
-
-
GET
/api/auth/profile
¶
+ - +GET /api/auth/profile¶
get authenticated user info
Example request:
diff --git a/docs/search.html b/docs/search.html index eec8a53e..5e422b0f 100644 --- a/docs/search.html +++ b/docs/search.html @@ -6,10 +6,10 @@-GET /api/auth/profile HTTP/1.1 @@ -381,13 +381,13 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
POST
/api/auth/profile/edit
¶
+ - +POST /api/auth/profile/edit¶
edit authenticated user
Example request:
--POST /api/auth/profile/edit HTTP/1.1 @@ -493,32 +493,32 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – user profile updated
--
+
200 OK – user profile updated
+invalid payload
password: password and password confirmation don’t match
--
+
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-500 Internal Server Error – error, please try again or contact the administrator
+500 Internal Server Error – error, please try again or contact the administrator
-
-
-
-
POST
/api/auth/picture
¶
+ - +POST /api/auth/picture¶
update authenticated user picture
Example request:
--POST /api/auth/picture HTTP/1.1 @@ -543,35 +543,35 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – user picture updated
--
+
200 OK – user picture updated
+invalid payload
no file part
no selected file
file extension not allowed
--
+
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-413 Request Entity Too Large – error during picture update: file size exceeds 1.0MB
-500 Internal Server Error – error during picture update
+413 Request Entity Too Large – error during picture update: file size exceeds 1.0MB
+500 Internal Server Error – error during picture update
-
-
-
-
DELETE
/api/auth/picture
¶
+ - +DELETE /api/auth/picture¶
delete authenticated user picture
Example request:
--DELETE /api/auth/picture HTTP/1.1 @@ -586,27 +586,27 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
204 No Content – picture deleted
--
+
204 No Content – picture deleted
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-500 Internal Server Error – error during picture deletion
+500 Internal Server Error – error during picture deletion
-
-
-
-
POST
/api/auth/password/reset-request
¶
+ - +POST /api/auth/password/reset-request¶
handle password reset request
Example request:
-diff --git a/docs/api/configuration.html b/docs/api/configuration.html index a50592b8..80219a1d 100644 --- a/docs/api/configuration.html +++ b/docs/api/configuration.html @@ -7,10 +7,10 @@POST /api/auth/password/reset-request HTTP/1.1 @@ -631,16 +631,16 @@
- Status Codes
-
-
200 OK – password reset request processed
-400 Bad Request – invalid payload
+200 OK – password reset request processed
+400 Bad Request – invalid payload
-
-
-
-
POST
/api/auth/password/update
¶
+ - +POST /api/auth/password/update¶
update user password
Example request:
@@ -691,7 +691,7 @@+POST /api/auth/password/update HTTP/1.1 @@ -667,16 +667,16 @@
- Status Codes
--
-
200 OK – password updated
-400 Bad Request – invalid payload
-401 Unauthorized – invalid token, please request a new token
-500 Internal Server Error – error, please try again or contact the administrator
+200 OK – password updated
+400 Bad Request – invalid payload
+401 Unauthorized – invalid token, please request a new token
+500 Internal Server Error – error, please try again or contact the administrator
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Configuration — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@--+diff --git a/docs/installation.html b/docs/installation.html index 71ccd335..3533c417 100644 --- a/docs/installation.html +++ b/docs/installation.html @@ -7,10 +7,10 @@Configuration¶
-
-
-
-
GET
/api/config
¶
+ - +GET /api/config¶
Get Application config
Example request:
diff --git a/docs/features.html b/docs/features.html index fa90836c..778c9232 100644 --- a/docs/features.html +++ b/docs/features.html @@ -7,10 +7,10 @@diff --git a/docs/api/index.html b/docs/api/index.html index 4b2c0d4c..fab11b2e 100644 --- a/docs/api/index.html +++ b/docs/api/index.html @@ -7,10 +7,10 @@GET /api/config HTTP/1.1 @@ -157,16 +157,16 @@
- Status Codes
-
-
200 OK – success
-500 Internal Server Error – error on getting configuration
+200 OK – success
+500 Internal Server Error – error on getting configuration
-
-
-
-
PATCH
/api/config
¶
+ - +PATCH /api/config¶
Update Application config
Authenticated user must be an admin
Example request:
@@ -207,29 +207,29 @@- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
-400 Bad Request – invalid payload
--
+
200 OK – success
+400 Bad Request – invalid payload
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-403 Forbidden – you do not have permissions
-500 Internal Server Error – error when updating configuration
+403 Forbidden – you do not have permissions
+500 Internal Server Error – error when updating configuration
API documentation — FitTrackee 0.5.0 documentation - - + + - + @@ -125,10 +125,10 @@-@@ -154,7 +154,7 @@++API documentation¶
-- +- Authentication
- Configuration @@ -139,7 +139,7 @@
- Workouts
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Records — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@-@@ -251,7 +251,7 @@++Records¶
-
-
-
-
GET
/api/records
¶
+ - +GET /api/records¶
Get all records for authenticated user.
- Following types of records are available:
-
@@ -219,13 +219,13 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Sports — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@-+ + + ++-Sports¶
-
-
-
-
GET
/api/sports
¶
+ - +GET /api/sports¶
Get all sports
Example request:
-diff --git a/docs/api/stats.html b/docs/api/stats.html index e1f0b1e6..65c8736a 100644 --- a/docs/api/stats.html +++ b/docs/api/stats.html @@ -7,10 +7,10 @@GET /api/sports HTTP/1.1 @@ -253,13 +253,13 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/sports/
(int: sport_id)¶
+ - +GET /api/sports/(int: sport_id)¶
Get a sport
Example request:
@@ -461,7 +461,7 @@ Authenticated user must be an admin+GET /api/sports/1 HTTP/1.1 @@ -346,27 +346,27 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
--
+
200 OK – success
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – sport not found
+404 Not Found – sport not found
-
-
-
-
PATCH
/api/sports/
(int: sport_id)¶
+ - +PATCH /api/sports/(int: sport_id)¶
Update a sport Authenticated user must be an admin
Example request:
@@ -425,28 +425,28 @@ Authenticated user must be an admin- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – sport updated
-400 Bad Request – invalid payload
--
+
200 OK – sport updated
+400 Bad Request – invalid payload
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-403 Forbidden – you do not have permissions
-404 Not Found – sport not found
-- +
403 Forbidden – you do not have permissions
+404 Not Found – sport not found
+
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Statistics — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@--+diff --git a/docs/api/users.html b/docs/api/users.html index 36852a4d..87cd9be1 100644 --- a/docs/api/users.html +++ b/docs/api/users.html @@ -7,10 +7,10 @@Statistics¶
-
-
-
-
GET
/api/stats/
(user_name)/by_time
¶
+ - +GET /api/stats/(user_name)/by_time¶
Get workouts statistics for a user by time
Example requests:
-
@@ -223,19 +223,19 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/stats/
(user_name)/by_sport
¶
+ - +GET /api/stats/(user_name)/by_sport¶
Get workouts statistics for a user by sport
Example requests:
-
@@ -326,19 +326,19 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/stats/all
¶
+ - +GET /api/stats/all¶
Get all application statistics
Example requests:
@@ -412,7 +412,7 @@+GET /api/stats/all HTTP/1.1 @@ -379,25 +379,25 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
--
-
200 OK – success
--
+
200 OK – success
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-403 Forbidden – you do not have permissions
+403 Forbidden – you do not have permissions
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Users — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@-- -+- -Users¶
-
-
-
-
GET
/api/users
¶
+ - +GET /api/users¶
Get all users
Example request:
-
@@ -258,13 +258,13 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/users/
(user_name)¶
+ - +GET /api/users/(user_name)¶
Get single user details
Example request:
-diff --git a/docs/api/workouts.html b/docs/api/workouts.html index 91f641c4..4e70d29f 100644 --- a/docs/api/workouts.html +++ b/docs/api/workouts.html @@ -7,10 +7,10 @@GET /api/users/admin HTTP/1.1 @@ -365,19 +365,19 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/users/
(user_name)/picture
¶
+ - +GET /api/users/(user_name)/picture¶
get user picture
Example request:
@@ -606,7 +606,7 @@ one admin+GET /api/users/admin/picture HTTP/1.1 @@ -408,8 +408,8 @@
- Status Codes
-
-
-
-
PATCH
/api/users/
(user_name)¶
+ - +PATCH /api/users/(user_name)¶
Update user to add admin rights
Only user with admin rights can modify another user
Example request:
@@ -515,32 +515,32 @@- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
--
+
200 OK – success
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-403 Forbidden – you do not have permissions
--
+
403 Forbidden – you do not have permissions
+user does not exist
-- +
-
-
-
-
DELETE
/api/users/
(user_name)¶
+ - +DELETE /api/users/(user_name)¶
Delete a user account
A user can only delete his own account
An admin can delete all accounts except his account if he’s the only @@ -564,34 +564,34 @@ one admin
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
204 No Content – user account deleted
--
+
204 No Content – user account deleted
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
--
+
you do not have permissions
you can not delete your account, no other user has admin rights
--
+
user does not exist
-500 Internal Server Error – error, please try again or contact the administrator
+500 Internal Server Error – error, please try again or contact the administrator
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Workouts — FitTrackee 0.5.0 documentation - - + + - + @@ -125,11 +125,11 @@--+- -Workouts¶
-
-
-
-
GET
/api/workouts
¶
+ - +GET /api/workouts¶
Get workouts for the authenticated user.
Example requests:
-
@@ -267,27 +267,27 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/workouts/
(string: workout_short_id)¶
+ - +GET /api/workouts/(string: workout_short_id)¶
Get an workout
Example request:
-- -GET /api/workouts/kjxavSTUrJvoAh2wvCeGEF HTTP/1.1 @@ -361,28 +361,28 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
--
+
200 OK – success
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-403 Forbidden – you do not have permissions
-404 Not Found – workout not found
+403 Forbidden – you do not have permissions
+404 Not Found – workout not found
-
-
-
-
GET
/api/workouts/
(string: workout_short_id)/gpx
¶
+ - +GET /api/workouts/(string: workout_short_id)/gpx¶
Get gpx file for an workout displayed on map with Leaflet
Example request:
- --GET /api/workouts/kjxavSTUrJvoAh2wvCeGEF/gpx HTTP/1.1 @@ -411,32 +411,32 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/workouts/
(string: workout_short_id)/chart_data
¶
+ - +GET /api/workouts/(string: workout_short_id)/chart_data¶
Get chart data from an workout gpx file, to display it with Recharts
Example request:
--GET /api/workouts/kjxavSTUrJvoAh2wvCeGEF/chart HTTP/1.1 @@ -484,32 +484,32 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
-
-
GET
/api/workouts/
(string: workout_short_id)/chart_data/segment/
(int: segment_id)¶
+ - +GET /api/workouts/(string: workout_short_id)/chart_data/segment/(int: segment_id)¶
Get chart data from an workout gpx file, to display it with Recharts
Example request:
--GET /api/workouts/kjxavSTUrJvoAh2wvCeGEF/chart/segment/0 HTTP/1.1 @@ -558,29 +558,29 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
-400 Bad Request – no gpx file for this workout
--
+
200 OK – success
+400 Bad Request – no gpx file for this workout
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – workout not found
-- +
404 Not Found – workout not found
+
-
-
-
-
GET
/api/workouts/
(string: workout_short_id)/gpx/segment/
(int: segment_id)¶
+ - +GET /api/workouts/(string: workout_short_id)/gpx/segment/(int: segment_id)¶
Get gpx file for an workout segment displayed on map with Leaflet
Example request:
- -- -GET /api/workouts/kjxavSTUrJvoAh2wvCeGEF/gpx/segment/0 HTTP/1.1 @@ -610,29 +610,29 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – success
-400 Bad Request – no gpx file for this workout
--
+
200 OK – success
+400 Bad Request – no gpx file for this workout
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – workout not found
-- +
404 Not Found – workout not found
+
-
-
-
-
GET
/api/workouts/map/
(map_id)¶
+ - +GET /api/workouts/map/(map_id)¶
Get map image for workouts with gpx
Example request:
--GET /api/workouts/map/fa33f4d996844a5c73ecd1ae24456ab8?1563529507772 @@ -652,23 +652,23 @@
- Status Codes
-
-
200 OK – success
--
+
200 OK – success
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – map does not exist
-- +
404 Not Found – map does not exist
+
-
-
-
-
GET
/api/workouts/map_tile/
(s)/
(z)/
(x)/
(y).png
¶
+ - +GET /api/workouts/map_tile/(s)/(z)/(x)/(y).png¶
Get map tile from tile server.
Example request:
- --GET /api/workouts/map_tile/c/13/4109/2930.png HTTP/1.1 @@ -693,8 +693,8 @@
-
-
-
-
POST
/api/workouts
¶
+ - +POST /api/workouts¶
Post an workout with a gpx file
Example request:
- --POST /api/workouts/ HTTP/1.1 @@ -794,35 +794,35 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
201 Created – workout created
--
+
201 Created – workout created
+invalid payload
no file part
no selected file
file extension not allowed
--
+
provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-413 Request Entity Too Large – error during picture update: file size exceeds 1.0MB
-- +
413 Request Entity Too Large – error during picture update: file size exceeds 1.0MB
+
-
-
-
-
POST
/api/workouts/no_gpx
¶
+ - +POST /api/workouts/no_gpx¶
Post an workout without gpx file
Example request:
--POST /api/workouts/no_gpx HTTP/1.1 @@ -926,28 +926,28 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
201 Created – workout created
-400 Bad Request – invalid payload
--
+
201 Created – workout created
+400 Bad Request – invalid payload
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-- +
-
-
-
-
PATCH
/api/workouts/
(string: workout_short_id)¶
+ - +PATCH /api/workouts/(string: workout_short_id)¶
Update an workout
Example request:
- -diff --git a/docs/changelog.html b/docs/changelog.html index f703022d..0c6dd5bc 100644 --- a/docs/changelog.html +++ b/docs/changelog.html @@ -7,10 +7,10 @@PATCH /api/workouts/1 HTTP/1.1 @@ -1055,29 +1055,29 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
-
-
200 OK – workout updated
-400 Bad Request – invalid payload
--
+
200 OK – workout updated
+400 Bad Request – invalid payload
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – workout not found
-- +
404 Not Found – workout not found
+
-
-
-
-
DELETE
/api/workouts/
(string: workout_short_id)¶
+ - +DELETE /api/workouts/(string: workout_short_id)¶
Delete an workout
Example request:
@@ -1132,7 +1132,7 @@+DELETE /api/workouts/kjxavSTUrJvoAh2wvCeGEF HTTP/1.1 @@ -1098,26 +1098,26 @@
- Request Headers
-
-
Authorization – OAuth 2.0 Bearer Token
+Authorization – OAuth 2.0 Bearer Token
- Status Codes
--
-
204 No Content – workout deleted
--
+
204 No Content – workout deleted
+provide a valid auth token
signature expired, please log in again
invalid token, please log in again
-404 Not Found – workout not found
-500 Internal Server Error – error, please try again or contact the administrator
+404 Not Found – workout not found
+500 Internal Server Error – error, please try again or contact the administrator
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Change log — FitTrackee 0.5.0 documentation - - + + - + @@ -78,141 +78,149 @@ aria-labelledby="dLabelLocalToc">- Change log
- Version 0.5.0 (unreleased)
-
-
- New Features -
- - Version 0.4.9 (2021/07/16)
-
-
- New Features
- Issues Closed +
- Pull Requests
-
+
- Misc
- - Version 0.4.8 (2021/07/03)
-
-
- Issues Closed
-
+
+ - Version 0.4.9 (2021/07/16) -
- Version 0.4.7 (2021/04/07)
-
+
- Version 0.4.8 (2021/07/03) + +
- Version 0.4.7 (2021/04/07)
-
+
- Issues Closed
-
+
- Bugs Fixed +
+ - Misc
- Issues Closed
- Version 0.4.6 (2021/02/21)
-
-
- Issues Closed
- Version 0.4.5 (2021/02/17)
-
-
- Issues Closed
- Version 0.4.4 (2021/01/31)
-
-
- Issues Closed
- Version 0.4.3 (2021/01/10)
-
-
- Issues Closed
- Version 0.4.2 (2021/01/03)
- Version 0.4.1 (2020/12/31)
-
-
- Issues Closed
- Version 0.4.0 - FitTrackee on PyPI (2020/09/19)
-
-
- Issues Closed
- Version 0.3.0 - Administration (2020/07/15)
-
-
- Issues Closed
- Version 0.2.5 - Fix and improvements (2020/01/31)
- Version 0.2.4 - Minor fix (2020/01/30)
-
-
- Issues Closed
-
-
- Bugs Fixed -
-
- - Issues Closed
- Version 0.2.3 - FitTrackee available in French (2019/12/29)
-
-
- Issues Closed -
- Version 0.2.2 - Statistics fix (2019/09/23)
-
+
- Version 0.2.3 - FitTrackee available in French (2019/12/29)
- Issues Closed + +
+ - Version 0.2.2 - Statistics fix (2019/09/23)
- Version 0.2.1 - Fix and improvements (2019/09/01)
-
-
- Issues Closed - -
- Misc -
- - Version 0.2.0 - Statistics (2019/07/07)
-
-
- Issues Closed -
- Version 0.1.1 - Fix and improvements (2019/02/07)
-
+
- Version 0.2.0 - Statistics (2019/07/07)
- Issues Closed + +
- Misc +
+ - Version 0.1.1 - Fix and improvements (2019/02/07)
- Version 0.1.0 - First release 🎉 (2018-07-04)
-
-
- Issues Closed
@@ -262,160 +270,178 @@
-- -+- -
Change log¶
Version 0.5.0 (unreleased)¶
++ +Issues Closed¶
- +New Features¶
+New Features¶
#18 - Better UI
+ +Bugs Fixed¶
++ Pull Requests¶
+-
+
#84/#93 - Add elevation data and new sports
+
+ +Misc¶
+-
+
#104 - Switch to AGPLv3 license
+
Version 0.4.9 (2021/07/16)¶
- New Features¶
+Issues Closed¶
++ New Features¶
-
- Issues Closed
@@ -262,160 +270,178 @@
- Version 0.2.0 - Statistics (2019/07/07)
- Version 0.2.3 - FitTrackee available in French (2019/12/29)
- Issues Closed
- Version 0.5.0 (unreleased)
--Misc¶
--
-
Update Python and Javascript dependencies
IMPORTANT: Due to SQLAlchemy update (1.4+), engine URLs starting withpostgres://
are no longer supported. Please updateDATABASE_URL
withpostgresql://
.
+#79 - Fails to start after make rebuild
In this release 1 issue was closed.
---Version 0.4.6 (2021/02/21)¶
+ + + ++ +Version 0.4.7 (2021/04/07)¶
Issues Closed¶
Bugs Fixed¶
-
+
#75 - Workouts on the same day are not displayed in right order
+
+ +Misc¶
+-
+
Update Python and Javascript dependencies
IMPORTANT: Due to SQLAlchemy update (1.4+), engine URLs starting withpostgres://
are no longer supported. Please updateDATABASE_URL
withpostgresql://
.
+
In this release 1 issue was closed.
++ Version 0.4.6 (2021/02/21)¶
++ Issues Closed¶
++ Bugs Fixed¶
+#72 - Error message when file exceeding size is incorrect
#71 - max size or max number of files must be greater than 0
#70 - max size for an archive must not be less than uploaded files max size
In this release 3 issues were closed.
-
-
-
+ + +-Version 0.4.3 (2021/01/10)¶
-- Issues Closed¶
-- New Features¶
++ Issues Closed¶
++ -New Features¶
#58 - Standardize terms used for workouts
Note: Database model, upload directory for workouts and API endpoints are also updated.
- Bugs Fixed¶
++ Bugs Fixed¶
#59 - No message displayed on uploading image error
In this release 2 issues were closed.
-
+ + + +-Version 0.4.0 - FitTrackee on PyPI (2020/09/19)¶
This version introduces some major changes:
-
@@ -423,42 +449,42 @@ new features.
It’s now possible to change the tile provider for maps. The default tile server is now OpenStreetMap’s standard tile layer (replacing ThunderForest Outdoors), see Map tile server in documentation.
- Issues Closed¶
-- New Features¶
++ Issues Closed¶
++ New Features¶
In this release 2 issue were closed.
-
+ + + +-Version 0.3.0 - Administration (2020/07/15)¶
This version introduces some major changes:
FitTrackee administration is now available (see documentation)
⚠️ Warning: some application parameters move from environment variables to database (see installation).in order to send emails, Redis is now a mandatory dependency
- Issues Closed¶
-- New Features¶
++ Issues Closed¶
++ New Features¶
#50 - A user can reset his password
#17 - A user can delete his account
#15 - Complete the administration
In this release 3 issues were closed.
-
--Version 0.1.1 - Fix and improvements (2019/02/07)¶
+In this release 8 issues were closed.
+ + ++ +Version 0.2.0 - Statistics (2019/07/07)¶
Issues Closed¶
New Features¶
-
+
#13 - Detailed statistics
+
+ +Misc¶
+-
+
Update dependencies
+
In this release 1 issue was closed.
++ Version 0.1.1 - Fix and improvements (2019/02/07)¶
++ Issues Closed¶
++ -New Features¶
+- Bugs Fixed¶
++ Bugs Fixed¶
#31 - Use moving duration for stats
#29 - Pause duration calculation with segments
@@ -587,10 +613,10 @@ add URL interceptors to simplify routes definition
#24 - Some distances are not displayed correctly on current month statistics
In this release 7 issues were closed.
-+ + + +-Version 0.1.0 - First release 🎉 (2018-07-04)¶
Features:
-
@@ -627,10 +653,10 @@ add URL interceptors to simplify routes definition
no administration for now
➡️ more informations: see documentation and current issues
-- Issues Closed¶
-- New Features¶
++ Issues Closed¶
++ New Features¶
#11 - Timezone support
#10 - Add a note to an activity
@@ -640,10 +666,10 @@ add URL interceptors to simplify routes definition
#2 - Calendar to view activities
In this release 6 issues were closed.
-
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Features — FitTrackee 0.5.0 documentation - - + + - + @@ -139,11 +139,11 @@-diff --git a/docs/index.html b/docs/index.html index dd6412b6..20c68062 100644 --- a/docs/index.html +++ b/docs/index.html @@ -7,10 +7,10 @@+-Features¶
-+-List¶
-+-Administration¶
(new in 0.3.0)
-
@@ -173,24 +173,29 @@
+ +-Account¶
A user can create, update and deleted his account
A user can reset his password (new in 0.3.0)
+ +-Workouts¶
-
-
- 6 sports are supported:
-
+
- 11 sports are supported:
Cycling (Sport)
Cycling (Transport)
Hiking
-Montain Biking
+Mountain Biking
+Mountain Biking (Electric) (new in 0.5.0)
+Rowing (new in 0.5.0)
Running
+Skiing (Alpine) (new in 0.5.0)
+Skiing (Cross Country) (new in 0.5.0)
+Trail (new in 0.5.0)
Walking
@@ -217,39 +222,39 @@
Note
for now, only the owner of the workout can see it.
+ +-Translations¶
FitTrackee is available in English and French (which can be saved in the user settings).
-+ + +-Dashboard¶
-+-+ + +-Workout detail¶
-+-+ + +-Workouts list¶
-+-+ + +-Statistics¶
-+-+ + +diff --git a/docs/http-routingtable.html b/docs/http-routingtable.html index 85622f6b..fa71c1d6 100644 --- a/docs/http-routingtable.html +++ b/docs/http-routingtable.html @@ -6,10 +6,10 @@Administration¶
-+diff --git a/docs/genindex.html b/docs/genindex.html index 9c2f599c..ccfcb334 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -6,10 +6,10 @@Index — FitTrackee 0.5.0 documentation - - + + - + @@ -189,7 +189,7 @@© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
HTTP Routing Table — FitTrackee 0.5.0 documentation - - + + - + @@ -320,7 +320,7 @@© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
FitTrackee — FitTrackee 0.5.0 documentation - - + + - + @@ -121,7 +121,7 @@ @@ -224,7 +224,7 @@ Map.© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Installation — FitTrackee 0.5.0 documentation - - + + - + @@ -158,7 +158,7 @@-+Installation¶
This application is written in Python (API) and Typescript (client):
-
@@ -184,7 +184,7 @@
Sports and weather icons are made by Freepik from www.flaticon.com.
-+necessary.Prerequisites¶
PostgreSQL database (10+)
@@ -205,8 +205,8 @@ on Debian and Arch).
+ +-Environment variables¶
Warning
@@ -218,8 +218,8 @@ necessary.-
-
-
-
FLASK_APP
¶
+ - +FLASK_APP¶
- Name of the module to import at flask run.@@ -227,8 +227,8 @@ deployment method.
FLASK_APP
should contain$(PWD)/fittrackee/__main__.py
with installation from sources, elsefittrackee
.-
-
-
-
APP_SETTINGS
¶
+ - +APP_SETTINGS¶
FitTrackee configuration.
- Default @@ -260,14 +260,14 @@ deployment method.
-
-
-
-
APP_SECRET_KEY
¶
+ - +APP_SECRET_KEY¶
FitTrackee secret key, must be initialized in production environment.
-
-
-
-
APP_WORKERS
¶
+ - +APP_WORKERS¶
Number of workers spawned by Gunicorn.
- Default @@ -277,8 +277,8 @@ deployment method.
-
-
-
-
DATABASE_URL
¶
+ - +DATABASE_URL¶
- Database URL with username and password, must be initialized in production environment.For example in dev environment :@@ -323,8 +323,8 @@ engine URL should begin with postgresql://.
postgresql://fittrackee:fittrackee@localhost:5432/fittrackee
-
-
-
-
DATABASE_DISABLE_POOLING
¶
+ - +DATABASE_DISABLE_POOLING¶
New in version 0.4.0.
- -
+UI_URL
¶- +UI_URL¶
FitTrackee URL, needed for links in emails.
- -
-
-
-
-
EMAIL_URL
¶
+ - +EMAIL_URL¶
New in version 0.3.0.
- -
+SENDER_EMAIL
¶- +SENDER_EMAIL¶
New in version 0.3.0.
- -
+REDIS_URL
¶- +REDIS_URL¶
New in version 0.3.0.
- -
+WORKERS_PROCESSES
¶- +WORKERS_PROCESSES¶
New in version 0.3.0.
- -
+TILE_SERVER_URL
¶- +TILE_SERVER_URL¶
New in version 0.4.0.
- -
+MAP_ATTRIBUTION
¶- +MAP_ATTRIBUTION¶
New in version 0.4.0.
- -
+DEFAULT_STATICMAP 🆕
¶- +DEFAULT_STATICMAP 🆕¶
New in version 0.4.9.
- -
+WEATHER_API_KEY
¶- +WEATHER_API_KEY¶
Changed in version 0.4.0: ⚠️ replaces
WEATHER_API
- -
+REACT_APP_API_URL
¶- +REACT_APP_API_URL¶
FitTrackee API URL, only needed in dev environment.
- -
+Deprecated variables¶
-
-
-
-
REACT_APP_GPX_LIMIT_IMPORT
¶
+ - +REACT_APP_GPX_LIMIT_IMPORT¶
Deprecated since version 0.3.0: now stored in database
- -
+REACT_APP_MAX_SINGLE_FILE_SIZE
¶- +REACT_APP_MAX_SINGLE_FILE_SIZE¶
Deprecated since version 0.3.0: now stored in database
- -
+REACT_APP_MAX_ZIP_FILE_SIZE
¶- +REACT_APP_MAX_ZIP_FILE_SIZE¶
Deprecated since version 0.3.0: now stored in database
- -
+REACT_APP_ALLOW_REGISTRATION
¶- +REACT_APP_ALLOW_REGISTRATION¶
Deprecated since version 0.3.0: now stored in database
- -
+REACT_APP_THUNDERFOREST_API_KEY
¶- +REACT_APP_THUNDERFOREST_API_KEY¶
Deprecated since version 0.4.0: see TILE_SERVER_URL
- -
-
-
+ +-Emails¶
New in version 0.3.0.
@@ -530,8 +530,8 @@ see smtp://username:password@smtp.example.com:465/?ssl=True -with STARTTLS:
smtp://username:password@smtp.example.com:587/?tls=True
+ +Map tile server¶
New in version 0.4.0.
@@ -549,9 +549,9 @@ The tile server can be changed by updatingCheck the terms of service of tile provider for map attribution
+ + +From PyPI¶
Note
@@ -565,7 +565,7 @@ The tile server can be changed by updatingNote that FitTrackee is under heavy development, some features may be unstable.
+Installation¶
Create and activate a virtualenv
@@ -621,8 +621,8 @@ $ source .env
To start application and workers with systemd service, see Deployment
+ +-Upgrade¶
Warning
@@ -655,9 +655,9 @@ $ source .envRestart the application and task queue workers.
+ + +-From sources¶
Warning
@@ -675,9 +675,9 @@ $ poetry config virtualenvs.in-project trueFor other OS, see Poetry Documentation
+-Installation¶
-+Dev environment¶
Clone this repo:
@@ -710,8 +710,8 @@ $ make install-db
Open http://localhost:3000 and log in (the email is
-admin@example.com
and the passwordmpwoadmin
) or register+ +-Production environment¶
Warning
@@ -752,9 +752,9 @@ database credentials):Open http://localhost:5000, log in as admin (the email is
-admin@example.com
and the passwordmpwoadmin
) and change the password+ + +-Upgrade¶
Warning
@@ -764,7 +764,7 @@ password- upload directory (see Environment variables)+-Dev environment¶
Stop the application and pull the repository:
@@ -792,8 +792,8 @@ $ make upgrade-db
-$ make run-workers
+ +-Prod environment¶
Stop the application
@@ -820,10 +820,10 @@ $ make upgrade-db
-$ make run
+ + + +-Deployment¶
There are several ways to start FitTrackee web application and task queue library. @@ -937,10 +937,10 @@ server {
Note
If needed, update configuration to handle larger files (see client_max_body_size).
+ +@@ -1010,7 +1010,7 @@ $ make docker-build docker-run docker-initDocker¶
- +© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Search — FitTrackee 0.5.0 documentation - - + + - + @@ -148,7 +148,7 @@© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Administrator — FitTrackee 0.5.0 documentation - - + + - + @@ -128,9 +128,9 @@--+Administrator¶
-+FitTrackee fails to start¶
Check the database URL in Environment variables if the following error is displayed in gunicorn logs:
@@ -139,8 +139,8 @@
It must start with postgresql:// (engine URLs starting with postgres:// are no longer supported).
-© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
Troubleshooting — FitTrackee 0.5.0 documentation - - + + - + @@ -125,10 +125,10 @@-@@ -152,7 +152,7 @@++Troubleshooting¶
-- +- Administrator
- FitTrackee fails to start @@ -137,7 +137,7 @@
- User
© Copyright 2018 - 2021, SamR1.
- Created using Sphinx 3.5.4.
+ Created using Sphinx 4.2.0.
User — FitTrackee 0.5.0 documentation - - + + - + @@ -125,10 +125,10 @@ diff --git a/docsrc/source/_images/fittrackee_screenshot-01.png b/docsrc/source/_images/fittrackee_screenshot-01.png index cf59e02d..a4166950 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-01.png and b/docsrc/source/_images/fittrackee_screenshot-01.png differ diff --git a/docsrc/source/_images/fittrackee_screenshot-02.png b/docsrc/source/_images/fittrackee_screenshot-02.png index 92f9e396..bc019ddd 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-02.png and b/docsrc/source/_images/fittrackee_screenshot-02.png differ diff --git a/docsrc/source/_images/fittrackee_screenshot-03.png b/docsrc/source/_images/fittrackee_screenshot-03.png index 1cfd0ade..1fa8106d 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-03.png and b/docsrc/source/_images/fittrackee_screenshot-03.png differ diff --git a/docsrc/source/_images/fittrackee_screenshot-04.png b/docsrc/source/_images/fittrackee_screenshot-04.png index ffecbc8e..9a219274 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-04.png and b/docsrc/source/_images/fittrackee_screenshot-04.png differ diff --git a/docsrc/source/_images/fittrackee_screenshot-05.png b/docsrc/source/_images/fittrackee_screenshot-05.png index 528777ab..4ee1c419 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-05.png and b/docsrc/source/_images/fittrackee_screenshot-05.png differ diff --git a/docsrc/source/_images/fittrackee_screenshot-06.png b/docsrc/source/_images/fittrackee_screenshot-06.png index 14771f82..755c1d4a 100644 Binary files a/docsrc/source/_images/fittrackee_screenshot-06.png and b/docsrc/source/_images/fittrackee_screenshot-06.png differ diff --git a/docsrc/source/features.rst b/docsrc/source/features.rst index 3ce51a41..5d051f65 100644 --- a/docsrc/source/features.rst +++ b/docsrc/source/features.rst @@ -39,12 +39,17 @@ Account Workouts ^^^^^^^^ -- 6 sports are supported: +- 11 sports are supported: - Cycling (Sport) - Cycling (Transport) - Hiking - - Montain Biking + - Mountain Biking + - Mountain Biking (Electric) (**new in 0.5.0**) + - Rowing (**new in 0.5.0**) - Running + - Skiing (Alpine) (**new in 0.5.0**) + - Skiing (Cross Country) (**new in 0.5.0**) + - Trail (**new in 0.5.0**) - Walking - Dashboard with month calendar displaying workouts and record. The week can start on Sunday or Monday (which can be changed in the user settings). The calendar displays up to 100 workouts. - Workout creation by uploading a gpx file. A workout can even be created without gpx (the user must enter date, time, duration and distance) diff --git a/poetry.lock b/poetry.lock index 21be3092..cc9a5fe2 100644 --- a/poetry.lock +++ b/poetry.lock @@ -204,7 +204,7 @@ test = ["pytest (>=6.2.0)", "pytest-cov", "pytest-subtests", "pytest-xdist", "pr [[package]] name = "docutils" -version = "0.16" +version = "0.17.1" description = "Docutils -- Python Documentation Utilities" category = "dev" optional = false @@ -998,17 +998,17 @@ python-versions = "*" [[package]] name = "sphinx" -version = "3.5.4" +version = "4.2.0" description = "Python documentation generator" category = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" [package.dependencies] alabaster = ">=0.7,<0.8" babel = ">=1.3" colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.12,<0.17" +docutils = ">=0.14,<0.18" imagesize = "*" Jinja2 = ">=2.3" packaging = "*" @@ -1017,14 +1017,14 @@ requests = ">=2.5.0" snowballstemmer = ">=1.1" sphinxcontrib-applehelp = "*" sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = "*" +sphinxcontrib-htmlhelp = ">=2.0.0" sphinxcontrib-jsmath = "*" sphinxcontrib-qthelp = "*" -sphinxcontrib-serializinghtml = "*" +sphinxcontrib-serializinghtml = ">=1.1.5" [package.extras] docs = ["sphinxcontrib-websupport"] -lint = ["flake8 (>=3.5.0)", "isort", "mypy (>=0.800)", "docutils-stubs"] +lint = ["flake8 (>=3.5.0)", "isort", "mypy (>=0.900)", "docutils-stubs", "types-typed-ast", "types-pkg-resources", "types-requests"] test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"] [[package]] @@ -1335,7 +1335,7 @@ testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytes [metadata] lock-version = "1.1" python-versions = "^3.7" -content-hash = "753c491e4c4dd8594fd5c306e19d464d5be68edfaf7ef9aae141deb348de6213" +content-hash = "8d512494a65324bb205159dbcfff06fa1780ae88c079b74314e3e70af28d6bd9" [metadata.files] alabaster = [ @@ -1518,8 +1518,8 @@ cryptography = [ {file = "cryptography-35.0.0.tar.gz", hash = "sha256:9933f28f70d0517686bd7de36166dda42094eac49415459d9bdf5e7df3e0086d"}, ] docutils = [ - {file = "docutils-0.16-py2.py3-none-any.whl", hash = "sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af"}, - {file = "docutils-0.16.tar.gz", hash = "sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc"}, + {file = "docutils-0.17.1-py2.py3-none-any.whl", hash = "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"}, + {file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"}, ] dramatiq = [ {file = "dramatiq-1.12.0-py3-none-any.whl", hash = "sha256:f9e4419279ceae2c4f864fea5b66c2d8660ab6f2c2ad0e751a6541bad85c81be"}, @@ -1998,8 +1998,8 @@ sortedcontainers = [ {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, ] sphinx = [ - {file = "Sphinx-3.5.4-py3-none-any.whl", hash = "sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"}, - {file = "Sphinx-3.5.4.tar.gz", hash = "sha256:19010b7b9fa0dc7756a6e105b2aacd3a80f798af3c25c273be64d7beeb482cb1"}, + {file = "Sphinx-4.2.0-py3-none-any.whl", hash = "sha256:98a535c62a4fcfcc362528592f69b26f7caec587d32cd55688db580be0287ae0"}, + {file = "Sphinx-4.2.0.tar.gz", hash = "sha256:94078db9184491e15bce0a56d9186e0aec95f16ac20b12d00e06d4e36f1058a6"}, ] sphinx-bootstrap-theme = [ {file = "sphinx-bootstrap-theme-0.8.0.tar.gz", hash = "sha256:038ee7e89478e064b5dd7e614de6f3f4cec81d9f9efbebb06e105693d6a50924"}, diff --git a/pyproject.toml b/pyproject.toml index fbf387fb..989fa454 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -53,12 +53,12 @@ pytest-isort = "^2.0" pytest-runner = "^5.3" pytest-selenium = "^2.0.1" recommonmark = "^0.7" -sphinx = "<4.0" sphinx-bootstrap-theme = "^0.8.0" sphinxcontrib-httpdomain = "^1.7" types-pytz = "^2021.3.0" types-requests = "^2.25.0" types-freezegun = "^1.1" +Sphinx = "^4.2" [tool.poetry.scripts] fittrackee = 'fittrackee.__main__:main'