-
Notifications
You must be signed in to change notification settings - Fork 57
Expand file tree
/
Copy pathurls.py
More file actions
78 lines (63 loc) · 3.81 KB
/
urls.py
File metadata and controls
78 lines (63 loc) · 3.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
from django.conf.urls import include
from django.urls import path
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView, SpectacularRedocView
from rest_framework.authtoken.views import obtain_auth_token
from rest_framework.routers import SimpleRouter
from rest_framework.urlpatterns import format_suffix_patterns
from .views import (
analytics,
competitions,
datasets,
profiles,
leaderboards,
submissions,
tasks,
queues,
quota
)
router = SimpleRouter()
router.register('competitions', competitions.CompetitionViewSet)
router.register('phases', competitions.PhaseViewSet, 'phases')
router.register('submissions', submissions.SubmissionViewSet)
router.register('datasets', datasets.DataViewSet)
router.register('leaderboards', leaderboards.LeaderboardViewSet)
router.register('submission_scores', leaderboards.SubmissionScoreViewSet, 'submission_scores')
router.register('tasks', tasks.TaskViewSet)
router.register('participants', competitions.CompetitionParticipantViewSet, 'participants')
router.register('queues', queues.QueueViewSet, 'queues')
router.register('users', profiles.UserViewSet, 'users')
router.register('organizations', profiles.OrganizationViewSet, 'organizations')
urlpatterns = [
path('my_profile/', profiles.GetMyProfile.as_view()),
path('datasets/completed/<uuid:key>/', datasets.upload_completed),
path('upload_submission_scores/<int:submission_pk>/', submissions.upload_submission_scores),
path('can_make_submission/<phase_id>/', submissions.can_make_submission, name="can_make_submission"),
path('user_lookup/', profiles.user_lookup),
path('analytics/', analytics.AnalyticsView.as_view(), name='analytics_api'),
path('api-auth/', include('rest_framework.urls', namespace='rest_framework')),
path('api-token-auth/', obtain_auth_token),
# User quota and cleanup
path('user_quota_cleanup/', quota.user_quota_cleanup, name="user_quota_cleanup"),
path('user_quota/', quota.user_quota, name="user_quota"),
path('delete_unused_tasks/', quota.delete_unused_tasks, name="delete_unused_tasks"),
path('delete_unused_datasets/', quota.delete_unused_datasets, name="delete_unused_datasets"),
path('delete_unused_submissions/', quota.delete_unused_submissions, name="delete_unused_submissions"),
path('delete_failed_submissions/', quota.delete_failed_submissions, name="delete_failed_submissions"),
path('delete_unused_starting_kits/', quota.delete_unused_starting_kits, name="delete_unused_starting_kits"),
path('delete_unused_competition_bundles/', quota.delete_unused_competition_bundles, name="delete_unused_competition_bundles"),
# User account
path('delete_account/', profiles.delete_account, name="delete_account"),
# Analytics
path('analytics/storage_usage_history/', analytics.storage_usage_history, name='storage_usage_history'),
path('analytics/competitions_usage/', analytics.competitions_usage, name='competitions_usage'),
path('analytics/users_usage/', analytics.users_usage, name='users_usage'),
path('analytics/delete_orphan_files/', analytics.delete_orphan_files, name="delete_orphan_files"),
path('analytics/get_orphan_files/', analytics.get_orphan_files, name="get_orphan_files"),
path('analytics/check_orphans_deletion_status/', analytics.check_orphans_deletion_status, name="check_orphans_deletion_status"),
# API Docs
path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
path('docs/', SpectacularSwaggerView.as_view(url_name='schema'), name='schema-swagger-ui'),
path('redoc/', SpectacularRedocView.as_view(url_name='schema'), name='schema-redoc'),
# Include this at the end so our URLs above run first, like /datasets/completed/<pk>/ before /datasets/<pk>/
path('', include(format_suffix_patterns(router.urls, allowed=['html', 'json', 'csv', 'zip']))),
]