Commit graph

114 commits

Author SHA1 Message Date
ff4d36b4cd docs: service module endpoint summaries 2026-05-28 16:03:04 +01:00
01c49ca34c docs: module template docstrings 2026-05-28 15:41:10 +01:00
b3085e85fd docs: service router response details 2026-05-28 15:30:39 +01:00
aa7dc46533 docs: service router details 2026-05-28 15:25:29 +01:00
d03478637a fix: remove oidc audience requirement 2026-05-28 15:16:21 +01:00
6cfacad131 docs: iam model docstring
Issue: #13
2026-05-28 15:06:38 +01:00
e44e2bd627 docs: global docstrings
Issue: #13
2026-05-28 14:59:27 +01:00
43cb7e700d docs: user docstrings
Issue: #13
2026-05-28 14:55:44 +01:00
d852bda091 docs: service docstrings
Issue: #13
2026-05-28 14:41:11 +01:00
71f26a4c9b feat: example .env 2026-05-28 14:32:08 +01:00
00dcf7ce35 minor: service schema nomenclature 2026-05-28 14:27:14 +01:00
33e78d4a9b docs: org docstrings
issue: #13
2026-05-28 14:23:36 +01:00
82c2b13a7f minor: contact endpoints allowed preapproval 2026-05-28 14:05:31 +01:00
9a1975c389 minor: iam schema nomenclature 2026-05-28 13:37:32 +01:00
7a0f43d34f minor: org schema nomenclature 2026-05-28 13:32:59 +01:00
0e169af456 docs: iam docstrings
Issue: #13
2026-05-28 13:22:24 +01:00
0c1c9f62ee fix: permission dependency 2026-05-28 13:19:54 +01:00
39d3f2d560 docs: contact docstrings
Issue: #13
2026-05-28 11:22:47 +01:00
42349b0182 docs: auth docstrings
Issue: #13
2026-05-28 11:22:47 +01:00
a86cfea65a minor: type hint 2026-05-28 11:22:37 +01:00
d8abe17618 docs: admin module docstrings
Issue: #13
2026-05-28 11:22:37 +01:00
88a64d2047 feat: root user dependencies also allow super admins 2026-05-28 10:56:45 +01:00
9efd86cd5f feat: org status check in auth dependencies
There is a hardcoded list of methods/endpoints for which the status check isn't done. i.e. the endpoints which need to be accessed before the org is approved.

Resolves #11
2026-05-28 10:56:45 +01:00
4bf5933376 minor: org pydantic model cleanup
Contact models also updated since they are now fully incorporated into orgs.

Issue #9
2026-05-27 16:51:46 +01:00
216836e2fd minor: cleanup service router imports 2026-05-27 16:30:12 +01:00
1ed0cfb38c feat: handling for integrity errors
Resolves: #7
2026-05-27 16:26:34 +01:00
fc835dc982 feat: missing dependency injections on org endpoints 2026-05-27 15:59:12 +01:00
689443c05e feat: auth requirements to service endpoints 2026-05-27 15:45:31 +01:00
66c2a71c8a feat: auth requirements to org endpoints 2026-05-27 15:42:53 +01:00
789d7d9f7a feat: auth requirements to user endpoints 2026-05-27 15:36:21 +01:00
7e8ec08283 feat: auth requirements to iam endpoints 2026-05-27 15:35:06 +01:00
51bb48372c feat: auth dependency for root user with org in body 2026-05-27 15:34:18 +01:00
36736e5142 fix: auth dependency return values and types
Return values were all labelled as dicts instead of bools. Root user dependency now returns the org for which they are root user.
2026-05-27 15:22:32 +01:00
868e56ce40 feat: custom exceptions instead of direct fastapi.httpexceptions
Resolves #2
2026-05-27 14:58:10 +01:00
d3d3b2ca63 feat: auth dependencies
These dependencies require `user_model_claims_dependency` which requires the `claims_dependency`. This caused an import loop error and therefore they must be defined in a different file from `claims_dependency`.

Resolves #6
2026-05-27 14:30:11 +01:00
75f5bc79da feat: service dependencies
Issue #6
2026-05-27 14:29:09 +01:00
d0c8c6c297 minor: typo in org exception 2026-05-27 14:29:09 +01:00
748544fb82 feat: user dependencies
In addition to the by-query and by-body db fetch dependencies. Users also have a by-claim dependency.

Issue #6
2026-05-27 14:29:09 +01:00
657f91d73d feat: org dependencies
Org endpoints use query/body model dependencies to perform initial db lookups.

Issue #6

Org ID path params have been replaced with either query params (get endpoints) or body values.

Resolves #10

Endpoints in other modules that rely on an org model lookup have also been updated.
2026-05-27 12:21:30 +01:00
c6a2b301dc feat: iam dependencies
IAM endpoints now use dependencies to perform most initial database get requests.

Issue #6
2026-05-27 12:21:30 +01:00
d4f1b73deb feat: iam endpoint req/res models 2026-05-26 16:25:14 +01:00
fa8439cc6c feat: auth bypass for dev and testing
ENVIRONMENT must be "local" and DISABLE_AUTH set for this to be active. Both of these default to production values to prevent this being enabled accidentally.

Resolves #5
2026-05-26 11:42:49 +01:00
652dfb7b4a feat: service module req/res models 2026-05-26 10:16:59 +01:00
b3689c8af6 feat: org router refactor
- All TODOs done.
- org_model_dependency used for all applicable routes
- ORM relationships used to reduce number of queries being made and simplify endpoint code.
- Missing request and response models added.
- Small bug fixes
2026-05-25 16:54:45 +01:00
2b6d923ae1 feat: contact model restructure
Blank contacts are now generated on org creation and assigned to each contact type. These contacts are linked to the org, only accessible to the org, and removed when the org is removed.

With this all contact endpoints have been removed. Contact manipulation is done via the org only.
2026-05-25 15:15:50 +01:00
707482adc2 feat: condensed org get endpoints
The process also added improved ORM relationships for multiple models.
2026-05-25 12:40:28 +01:00
a80767d870 feat: condensed user get endpoints
The process also added improved ORM relationships for multiple models.
2026-05-25 12:06:24 +01:00
4ff184fe86 feat: sqlalchemy defined orgusers relationship 2026-05-25 10:21:15 +01:00
d51adb4e55 feat: org root user dependency 2026-05-25 09:54:46 +01:00
2a20172d78 fix: questionnaire patch route update for new model 2026-05-25 09:54:19 +01:00