Commit Graph

130 Commits

Author SHA1 Message Date
974e1878f8 chore(api tokens): add swagger docs about api token auth 2023-09-01 15:53:27 +02:00
e295d75e6e feat(api tokens): move token validation middleware to new function 2023-09-01 10:19:55 +02:00
e3dac16398 feat(api tokens): check permissions when saving 2023-09-01 08:52:57 +02:00
5c6c6cd9f0 feat(api tokens): check for scopes 2023-09-01 08:36:15 +02:00
677bd5cfc9 feat(api tokens): check for expiry date 2023-09-01 08:36:15 +02:00
fb2a1c59db feat(api tokens): check if a provided token matched a hashed on in the database 2023-09-01 08:36:15 +02:00
e6b25bd57b feat(api tokens): add crud routes to manage api tokens 2023-09-01 08:35:54 +02:00
1ca93a678e feat: endpoint to get all token routes 2023-09-01 08:35:54 +02:00
e518fb1191 chore: remove year from copyright headers
Some checks failed
continuous-integration/drone/push Build is failing
Resolves vikunja/api#1483
2023-09-01 08:32:28 +02:00
d68338b649 fix(docs): clarify error codes in swagger docs
All checks were successful
continuous-integration/drone/push Build is passing
Resolves vikunja/api#1518
2023-05-30 21:37:40 +02:00
b56e45d743 fix: use rewrite when hosting frontend files via the api
All checks were successful
continuous-integration/drone/push Build is passing
Resolves vikunja/api#1531
2023-05-30 18:56:37 +02:00
3b837a472b fix(migration): remove wunderlist leftovers 2023-05-24 15:51:55 +02:00
e93a5ff11f fix: rename after rebase 2023-05-24 15:51:54 +02:00
16de7cd591 feat(projects): remove namespaces 2023-05-24 15:51:54 +02:00
47c2da7f18 feat: rename lists to projects 2023-05-24 15:51:53 +02:00
fc73c84bf2 feat: rename lists to projects 2023-05-24 15:51:53 +02:00
87ed68e4c8 fix(migration): remove wunderlist leftovers 2023-05-24 15:51:53 +02:00
50c922b7d1 fix: lint 2023-05-24 15:51:53 +02:00
96a0f5e169 feat: rename lists to projects 2023-05-24 15:51:53 +02:00
47e42238ef fix: make sure Vikunja is buildable without swagger docs present
Some checks failed
continuous-integration/drone/push Build is failing
2023-04-06 12:11:31 +02:00
fc2cc4a155 fix: spelling
Some checks failed
continuous-integration/drone/push Build is failing
2023-04-03 05:19:08 +00:00
cf7423fc1a fix(api): license (#1457)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: vikunja/api#1457
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
Co-committed-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
2023-04-02 19:34:06 +00:00
77ad90d53e fix(migration): remove wunderlist leftovers 2023-03-13 14:28:20 +01:00
06f1d2e912 fix: test fixtures 2023-03-13 14:28:07 +01:00
7e53a21407 fix: rename incorrectly named ProjectUsers method 2023-03-13 14:28:06 +01:00
349e6a5905 feat: rename lists to projects 2023-03-13 14:28:06 +01:00
c0c523f0a8 fix: don't send bad request errors to sentry
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-13 10:52:52 +01:00
ef1d1e2b20 feat(migrators): remove wunderlist (#1346)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1346
2022-12-29 17:12:39 +00:00
c6429c8b13 fix(deps): update module github.com/labstack/echo/v4 to v4.10.0 (#1343)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1343
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-12-28 10:32:12 +00:00
f5a33478f2 fix(migration): make sure importing works when the csv file has errors and don't try to parse empty values as dates
All checks were successful
continuous-integration/drone/pr Build is passing
2022-10-09 22:58:08 +02:00
3af9855148 feat(migration): add routes for TickTick migrator 2022-10-09 22:44:49 +02:00
e5394d6d4b feat(migration): add TickTick migrator 2022-10-09 22:44:32 +02:00
8f27e7e619 fix: properly decode params in url
Some checks failed
continuous-integration/drone/push Build is failing
Resolves vikunja/api#1224
2022-08-02 14:50:03 +02:00
8869adfc27 feat: add setting to change overdue tasks reminder email time
All checks were successful
continuous-integration/drone/push Build is passing
2022-06-16 16:20:26 +02:00
acaa85083f feat: ability to serve static files (#1174)
All checks were successful
continuous-integration/drone/push Build is passing
Added the configuration key, `service.staticpath`, to serve files from the configuration path on root (/).

Serving static files allows the api service to also serve the frontend content. This is a simple option for deploying Vikunja without needing any other servers or proxies.

Running a complete instance becomes:

    VIKUNJA_SERVICE_STATICPATH=/path/to/frontend ./vikunja

Where `/path/to/frontend` is a copy of Vikunja's frontend static files.

## Implementation

Providing a path, via the configuration or environment, adds a static file middleware to serve the path's contents from root (/).

By default, the configuration path is empty and Vikunja's existing behaviour is unchanged.

Co-authored-by: Graham Miln <graham.miln@dssw.co.uk>
Reviewed-on: vikunja/api#1174
Reviewed-by: konrad <k@knt.li>
Co-authored-by: grahammiln <grahammiln@noreply.kolaente.de>
Co-committed-by: grahammiln <grahammiln@noreply.kolaente.de>
2022-05-23 20:49:28 +00:00
e4b50e84a4 feat: add caldav tokens (#1065)
All checks were successful
continuous-integration/drone/push Build is passing
# Description

This PR adds API routes to create and manage caldav tokens. These tokens can be used instead of a user password - required for users who are using external auth providers and don't have a password.

Fixes #842

Frontend: vikunja/frontend#1186

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1065
2022-03-30 18:25:56 +00:00
ac6818a476 fix: checking for error types
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-27 17:52:33 +02:00
5cf263a86f feat: upgrade golangci-lint to 1.45.2
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-27 16:55:37 +02:00
61d49c3a56 feat: add time zone setting for reminders (#1092)
All checks were successful
continuous-integration/drone/push Build is passing
Instead of naeveily checking for all reminders due in the next minute, we now check all reminders in all time zones in the next minutes. This essentially means checking for reminders due in the next 14 or past 12 hours. We then check for each user who would receive a reminder from that result if it is actually due in their time zone.

This should prevent issues where users would get the reminder in the time zone of their server, not in their own.

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1092
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-01-16 11:05:56 +00:00
093d0c65ca feat: enable rate limit for unauthenticated routes
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-14 20:42:33 +01:00
fb9fa27488 healthcheck endpoint (#998)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Igor Rzegocki <igor@rzegocki.pl>
Reviewed-on: vikunja/api#998
Reviewed-by: konrad <k@knt.li>
Co-authored-by: ajgon <vikunja-gitea@ajgon.ovh>
Co-committed-by: ajgon <vikunja-gitea@ajgon.ovh>
2021-10-03 18:37:02 +00:00
90146aea5b User Data Export and import (#967)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#967
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-09-04 19:26:31 +00:00
27119ad6d4 User account deletion (#937)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#937
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-11 19:08:10 +00:00
c3da454854 Update module github.com/golang-jwt/jwt to v4 (#930)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#930
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-03 21:43:18 +00:00
e38be9bd18 Update module github.com/labstack/echo/v4 to v4.5.0 (#929)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#929
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-02 18:33:53 +00:00
dac315db59 Fix jwt middleware
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 15:25:48 +02:00
ee436efba3 Add endpoint to remove a list background
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-21 17:49:14 +01:00
2178166ece Add crud endpoints for notifications (#801)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#801
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-21 14:50:34 +00:00
eb3a945678 Fix deleting task relations
Some checks reported errors
continuous-integration/drone/push Build encountered an error
While the request body of a DELETE request *can* have data in it, it is not really supported and pretty much undocumented. As such, it doesn't work in all clients and probably broke with recent updates.
This fixes this by moving all parts of the task relation used to identify it in the url.

More Info: https://stackoverflow.com/a/299696/10924593
2021-02-18 23:35:33 +01:00
e7875ecb3b Subscriptions and notifications for namespaces, tasks and lists (#786)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#786
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-14 19:18:14 +00:00