* refactor: folder structure for urls * chore: deleted the urls file * chore: proper naming for urls * chore: reset password url * dev: create refresh token endpoint and endpoint to get settings for user * dev: workspace member me serializer * dev: remove extra fields from project list and retrieve endpoints * dev: update the project list endpoint with member details and deploy boolean * dev: enable user favorite project endpoint and remove is_favorite from project list * dev: analytics refactoring * dev: revert is_favorite settings * dev: create new serializer for project list and add pagination from projects * dev: fix analytics api * dev: module and cycle * dev: update error message, fix module analytics and add null check for labels * dev: member serializer * dev: dynamic base serializer * dev: remove view issues endpoint * dev: url pattern updates * dev: add comments to delete this file * dev: last workspace id * dev: analytics export * dev: export analytics validation * dev: update python runtime * dev: update notification endpoints * dev: cycle and validation fix * dev: issue activity validation when creating updating and deleting issue and comments * dev: update issue activity logging for link and reactions * dev: update module issue activity logging * dev: update module issue activity --------- Co-authored-by: NarayanBavisetti <narayan3119@gmail.com>
150 lines
4.4 KiB
Python
150 lines
4.4 KiB
Python
from django.urls import path
|
|
|
|
|
|
from plane.api.views import (
|
|
IntegrationViewSet,
|
|
WorkspaceIntegrationViewSet,
|
|
GithubRepositoriesEndpoint,
|
|
GithubRepositorySyncViewSet,
|
|
GithubIssueSyncViewSet,
|
|
GithubCommentSyncViewSet,
|
|
BulkCreateGithubIssueSyncEndpoint,
|
|
SlackProjectSyncViewSet,
|
|
)
|
|
|
|
|
|
urlpatterns = [
|
|
path(
|
|
"integrations/",
|
|
IntegrationViewSet.as_view(
|
|
{
|
|
"get": "list",
|
|
"post": "create",
|
|
}
|
|
),
|
|
name="integrations",
|
|
),
|
|
path(
|
|
"integrations/<uuid:pk>/",
|
|
IntegrationViewSet.as_view(
|
|
{
|
|
"get": "retrieve",
|
|
"patch": "partial_update",
|
|
"delete": "destroy",
|
|
}
|
|
),
|
|
name="integrations",
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/workspace-integrations/",
|
|
WorkspaceIntegrationViewSet.as_view(
|
|
{
|
|
"get": "list",
|
|
}
|
|
),
|
|
name="workspace-integrations",
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/workspace-integrations/<str:provider>/",
|
|
WorkspaceIntegrationViewSet.as_view(
|
|
{
|
|
"post": "create",
|
|
}
|
|
),
|
|
name="workspace-integrations",
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/workspace-integrations/<uuid:pk>/provider/",
|
|
WorkspaceIntegrationViewSet.as_view(
|
|
{
|
|
"get": "retrieve",
|
|
"delete": "destroy",
|
|
}
|
|
),
|
|
name="workspace-integrations",
|
|
),
|
|
# Github Integrations
|
|
path(
|
|
"workspaces/<str:slug>/workspace-integrations/<uuid:workspace_integration_id>/github-repositories/",
|
|
GithubRepositoriesEndpoint.as_view(),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/workspace-integrations/<uuid:workspace_integration_id>/github-repository-sync/",
|
|
GithubRepositorySyncViewSet.as_view(
|
|
{
|
|
"get": "list",
|
|
"post": "create",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/workspace-integrations/<uuid:workspace_integration_id>/github-repository-sync/<uuid:pk>/",
|
|
GithubRepositorySyncViewSet.as_view(
|
|
{
|
|
"get": "retrieve",
|
|
"delete": "destroy",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/github-repository-sync/<uuid:repo_sync_id>/github-issue-sync/",
|
|
GithubIssueSyncViewSet.as_view(
|
|
{
|
|
"post": "create",
|
|
"get": "list",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/github-repository-sync/<uuid:repo_sync_id>/bulk-create-github-issue-sync/",
|
|
BulkCreateGithubIssueSyncEndpoint.as_view(),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/github-repository-sync/<uuid:repo_sync_id>/github-issue-sync/<uuid:pk>/",
|
|
GithubIssueSyncViewSet.as_view(
|
|
{
|
|
"get": "retrieve",
|
|
"delete": "destroy",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/github-repository-sync/<uuid:repo_sync_id>/github-issue-sync/<uuid:issue_sync_id>/github-comment-sync/",
|
|
GithubCommentSyncViewSet.as_view(
|
|
{
|
|
"post": "create",
|
|
"get": "list",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/github-repository-sync/<uuid:repo_sync_id>/github-issue-sync/<uuid:issue_sync_id>/github-comment-sync/<uuid:pk>/",
|
|
GithubCommentSyncViewSet.as_view(
|
|
{
|
|
"get": "retrieve",
|
|
"delete": "destroy",
|
|
}
|
|
),
|
|
),
|
|
## End Github Integrations
|
|
# Slack Integration
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/workspace-integrations/<uuid:workspace_integration_id>/project-slack-sync/",
|
|
SlackProjectSyncViewSet.as_view(
|
|
{
|
|
"post": "create",
|
|
"get": "list",
|
|
}
|
|
),
|
|
),
|
|
path(
|
|
"workspaces/<str:slug>/projects/<uuid:project_id>/workspace-integrations/<uuid:workspace_integration_id>/project-slack-sync/<uuid:pk>/",
|
|
SlackProjectSyncViewSet.as_view(
|
|
{
|
|
"delete": "destroy",
|
|
"get": "retrieve",
|
|
}
|
|
),
|
|
),
|
|
## End Slack Integration
|
|
]
|