from django.urls import path from django.views.decorators.csrf import csrf_exempt from .endpoints import login from .endpoints import user from .endpoints import me from .endpoints import signup from .endpoints import forget from .endpoints import operation from .endpoints import point from .endpoints import code from .endpoints import company from .endpoints import contact_us from .endpoints import tug from .endpoints import asktug from .endpoints import github_contributors from .endpoints import partner from .endpoints import captcha from .endpoints.private import sso as p_sso from .endpoints.private import user_track from .endpoints.private import pingcap_lark from .endpoints import customer_support from .endpoints.admin import contact_us as admin_contact_us from .endpoints.admin import point as admin_point from .endpoints.admin import setting as admin_setting from .endpoints.admin import metabase as admin_metabase from .endpoints.admin import user_behavior as admin_user_behavior from .endpoints.admin import user as admin_user from .endpoints.admin import cloud_users as admin_cloud_users from .endpoints.admin import cloud_orgs as admin_cloud_orgs from .endpoints.admin import staff as admin_staff from .endpoints.admin import tug as admin_tug from .endpoints.admin import archmage from .endpoints.admin import portrait from .endpoints.admin import asktug_admin_helper from .endpoints.admin import company_analytic as admin_company_analytic from .endpoints.admin import company_verify as admin_company_verify from .endpoints.admin import sales_leads as admin_sales_leads from .endpoints.admin import evangelist as admin_evangelist from .endpoints.admin import ip_region as admin_ip_region from .endpoints.admin import user_cantact_info as admin_user_cantact_info from .endpoints.admin import blog as admin_blog from .endpoints.admin import asktug_site_config as admin_asktug_site_config urlpatterns = [ path('sms/code', code.SmsCodeEndpoint.as_view()), path('login/phone/check', login.PhoneCheckEndpoint.as_view()), path('login/phone/send-code', login.PhoneSendCodeEndpoint.as_view()), path('login/phone', login.PhoneLoginEndpoint.as_view()), path('login/password', login.PasswordLoginEndpoint.as_view()), path('update-phone/send-code', login.UpdatePhoneSendCodeEndpoint.as_view()), path('forget/send-code', forget.ForgetSendCodeEndpoin.as_view()), path('forget/verify', forget.ForgetVerifyEndpoin.as_view()), path('forget/reset-password', forget.ForgetResetPasswordEndpoint.as_view()), path('signup/send-code', signup.SignupSendCodeEndpoint.as_view()), path('signup', signup.SignupEndpoint.as_view()), path('profile', me.ProfileEndpoint.as_view()), path('profile/company/send-code', me.CompanyVerifySendCodeEndpoint.as_view()), path('profile/company/verify', me.CompanyVerifySubmitApplicationEndpoint.as_view()), path('account/settings', me.AccountSettingEndpoint.as_view()), path('account/reset-password', me.ResetPasswordEndpoint.as_view()), path('account/set-password', me.SetPasswordEndpoint.as_view()), path('account/set-phone/send-code', me.SetPhoneSendCodeEndpoint.as_view()), path('account/set-phone', me.SetPhoneEndpoint.as_view()), path('account/set-email/send-code', me.SetEmailSendCodeEndpoint.as_view()), path('account/set-email', me.SetEmailEndpoint.as_view()), path('social/disconnect/', me.SocialDisconnectEndpoint.as_view()), path('users/', user.DetailEndpoint.as_view()), path('operation/red-dots', operation.RedDotListEndpoint.as_view()), path('operation/red-dots/', operation.RedDotDetailEndpoint.as_view()), ] urlpatterns += [ path('me', user.MeEndpoint.as_view()), path('asktug-me', user.AskTUGMeEndpoint.as_view()), path('userinfo', user.UserinfoEndpoint.as_view()), ] urlpatterns += [ path('tidb-releases', contact_us.TiDBReleaseListEndpoint.as_view()), path('contact-us/validate-qualification', contact_us.ValidateQualificationEndpoint.as_view()), # path('contact-us/emergencies', contact_us.EmergencyCreateEndpoint.as_view()), path('contact-us/communication', contact_us.CommunicationCreateEndpoint.as_view()), path('contact-us/cooperation', contact_us.CooperationCreateEndpoint.as_view()), path('official/contact-us/sms-code', contact_us.OfficialContactUsSmsCodeEndpoint.as_view()), path('official/contact-us', contact_us.OfficialContactUsEndpoint.as_view()), path('official/joint-solution-mutual-certification', contact_us.OfficialJointSolutionMutualCertificationEndpoint.as_view()), path('community-contact-us', contact_us.CommunityContactUsEndpoint.as_view()), ] urlpatterns += [ path('_/sso/session-info', p_sso.SessionInfoEndpoint.as_view()), path('_/sso/session', p_sso.SessionDetailEndpoint.as_view()), path('_/sso/session/discourse', p_sso.DiscourseSyncTokenEndpoint.as_view()), path('_/sso/user//marketing-profile', p_sso.SSOUserMarketingProfileEndpoint.as_view()), path('_/sso/user//upload-form-submit', p_sso.SSOUserUploadFormSubmitEndpoint.as_view()), ] urlpatterns += [ path('captcha/refresh', csrf_exempt(captcha.CaptchaRefreshEndpoint.as_view())), ] urlpatterns += [ path('tug/applications', tug.ApplicationEndpoint.as_view()), path('customer-support/contact-us', customer_support.ContactUsEndpoint.as_view()), path('customer-support/business-download-leads', customer_support.BusinessDownloadLeadsEndpoint.as_view()) ] urlpatterns += [ path('user-track/events', user_track.EventsCreateEndpoint.as_view()), path('user-track/events/bulck', user_track.EventsBulckCreateEndpoint.as_view()), path('user-track/asktug-webhook', user_track.AsktugWebhookEndpoint.as_view()), ] urlpatterns += [ path('asktug/badges', asktug.BadgeListEndpoint.as_view()), path('asktug/badges/top', asktug.BadgeTopListEndpoint.as_view()), path('asktug/site/config', asktug.SiteConfigEndpoint.as_view()), ] urlpatterns += [ path('points/me', point.UserInfoEndpoint.as_view()), path('points/public/', point.UserPublicSummaryEndpoint.as_view()), path('points/awarded', point.AwardedPointListEndpoint.as_view()), path('points/daily-checkin', point.DailyCheckinEndpoint.as_view()), path('points/shop/products', point.ShopProductListEndpoint.as_view()), path('points/shop/redeem', point.ShopRedeemEndpoint.as_view()), path('points/shop/redeem-records', point.ShopRedeemRecordListEndpoint.as_view()), path('points/top', point.TopListEndpoint.as_view()), ] urlpatterns += [ path('search-company', company.SearchCompanyEndpoint.as_view()), ] urlpatterns += [ path('contributors/', github_contributors.ContributorDetailEndpoint.as_view()), ] # This endpoint received pingcap lark event, such as staff_resigned urlpatterns += [ path('pingcap-lark/webhook', pingcap_lark.PingCAPLarkWebhookEndpoint.as_view()), path('pingcap-cn-lark/webhook', pingcap_lark.PingCAPCNLarkWebhookEndpoint.as_view()), ] # This endpoint group is for partner.pingcap.cn urlpatterns += [ path('partner/me', user.MeEndpoint.as_view()), path('partner/compatibility-certifications', partner.PartnerCompatibilityCertificationListEndpoint.as_view()), path('partner/compatibility-certifications/applications/send-sms-code', partner.PartnerCompatibilityCertificationApplicationSmsCodeEndpoint.as_view()), path('partner/compatibility-certifications/applications', partner.PartnerCompatibilityCertificationApplicationEndpoint.as_view()), path('partner/compatibility-certifications/applications/', partner.PartnerCompatibilityCertificationApplicationDetailEndpoint.as_view()), path('partner/compatibility-certifications/applications//attachment-1', partner.PartnerCompatibilityCertificationApplicationAttachment1Endpoint.as_view(), name='partner-compatibility-certification-application-attachment-1' ), path('partner/compatibility-certifications/applications//company-logo', partner.PartnerCompatibilityCertificationApplicationCompanyLogoEndpoint.as_view(), name='partner-compatibility-certification-application-company-logo' ), ] urlpatterns += [ path('admin/finduser', admin_user.FindUserEndpoint.as_view()), path('admin/user-behavior/recently-overview', admin_user_behavior.RecentlyOverviewEndpoint.as_view()), path('admin/user-behavior/recently-events', admin_user_behavior.RecentlyEventsEndpoint.as_view()), path('admin/user-behavior/events/search', admin_user_behavior.EventSearchEndpoint.as_view()), path('admin/user-behavior/reports/active-users', admin_user_behavior.ActiveUserReportEndpoint.as_view()), path('admin/user-behavior/reports/dau', admin_user_behavior.DAUReportEndpoint.as_view()), path('admin/user-behavior/reports/event-trending', admin_user_behavior.EventTrendingReportEndpoint.as_view()), path('admin/user-behavior/reports/hot-docs', admin_user_behavior.HotDocsReportEndpoint.as_view()), path('admin/user-behavior/reports/hot-pages', admin_user_behavior.HotPagesReportEndpoint.as_view()), path('admin/user-behavior/reports/asktug-topic-creator-company-distribute', admin_user_behavior.AskTUGTopicCreatorCompanyDistributeEndpoint.as_view()), path('admin/user-behavior/reports/tidb-usage-distribute', admin_user_behavior.TiDBUsageDistributeEndpoint.as_view()), path('admin/metabase-overview', admin_metabase.OverviewEndpoint.as_view()), path('admin/settings', admin_setting.SettingEndpoint.as_view()), path('admin/contact-us/emergencies', admin_contact_us.EmergencyListEndpoint.as_view()), path('admin/contact-us/emergencies/', admin_contact_us.EmergencyDetailEndpoint.as_view()), path('admin/contact-us/communication', admin_contact_us.CommunitcationListEndpoint.as_view()), path('admin/contact-us/communication/', admin_contact_us.CommunitcationDetailEndpoint.as_view()), path('admin/contact-us/cooperation', admin_contact_us.CooperationListEndpoint.as_view()), path('admin/contact-us/cooperation/', admin_contact_us.CooperationDetailEndpoint.as_view()), path('admin/points/products', admin_point.ProductListEndpoint.as_view()), path('admin/points/products/edit', admin_point.ProductEditEndpoint.as_view()), path('admin/points/products/reorder', admin_point.ProductReorderEndpoint.as_view()), path('admin/points/orders', admin_point.OrderListEndpoint.as_view()), path('admin/points/orders/edit-logistics', admin_point.OrderEditLogisticsEndpoint.as_view()), path('admin/points/users//awarded', admin_point.UserAwardedListEndpoint.as_view()), path('admin/points/users//redeem-records', admin_point.UserRedeemListEndpoint.as_view()), path('admin/points/users//manual-award', admin_point.ManualAwardEndpoint.as_view()), path('admin/points/bulk-award', admin_point.BulkAwardEndpoint.as_view()), path('admin/users', admin_user.UserListEndpoint.as_view()), path('admin/cloud-users/summary', admin_cloud_users.SummaryEndpoint.as_view()), path('admin/cloud-users', admin_cloud_users.ListEndpoint.as_view()), path('admin/cloud-users/', admin_cloud_users.DetailEndpoint.as_view()), path('admin/cloud-orgs', admin_cloud_orgs.OrgListEndpoint.as_view()), path('admin/cloud-orgs/', admin_cloud_orgs.OrgDetailEndpoint.as_view()), path('admin/cloud-orgs//clusters', admin_cloud_orgs.OrgClustersEndpoint.as_view()), path('admin/cloud-orgs//cost-trends', admin_cloud_orgs.OrgCostTrendsEndpoint.as_view()), path('admin/users/', admin_user.UserDetailEndpoint.as_view()), path('admin/users//staff-annotation', admin_user.StaffAnnotationEndpoint.as_view()), path('admin/users//admin-edit-profile', admin_user.AdminEditProfileEndpoint.as_view()), path('admin/users//tidb-usage', admin_user.TiDBUsageEndpoint.as_view()), path('admin/users//leads', admin_user.CRMLeadsListCreateEndpoint.as_view()), path('admin/users//high-frequency-addresses-by-ip', admin_user.HighFrequencyAddressesByIPEndpoint.as_view()), path('admin/users//ban', admin_user.BanUserEndpoint.as_view()), path('admin/users//unban', admin_user.UnbanUserEndpoint.as_view()), path('admin/staffs', admin_staff.StaffListEndpoint.as_view()), path('admin/staffs/find-lark-staff', admin_staff.FindLarkStaffEndpoint.as_view()), path('admin/staffs/', admin_staff.StaffDetailEndpoint.as_view()), path('admin/staffs//groups', admin_staff.EditStaffGroupEndpoint.as_view()), path('admin/staffs//audit-logs', admin_staff.StaffAuditLogListEndpoint.as_view()), path('admin/groups', admin_staff.GroupListEndpoint.as_view()), path('admin/user-contact-info-search', admin_user_cantact_info.UserContactInfoEndpoint.as_view()), path('admin/user-contact-info-by-company-search', admin_user_cantact_info.UserContactInfoByCompanyEndpoint.as_view()), path('admin/tug/members', admin_tug.MemberListEndpoint.as_view()), path('admin/tug/applications', admin_tug.ApplicationListEndpoint.as_view()), path('admin/tug/applications/', admin_tug.ApplicationDetailEndpoint.as_view()), path('admin/portrait/filter', portrait.FilterEndpoint.as_view()), path('admin/portrait/keywords/search', portrait.SearchKeywordEndpoint.as_view()), path('admin/company/analytics', admin_company_analytic.AnalyticsEndpoint.as_view()), path('admin/company/verify/applications', admin_company_verify.ApplicationListEndpoint.as_view()), path('admin/company/verify/applications/', admin_company_verify.ApplicationDetailEndpoint.as_view()), path('admin/company/verify/applications//incumbency-cert', admin_company_verify.ApplicationCertEndpoint.as_view()), path('admin/sales-leads', admin_sales_leads.LeadsListEndpoint.as_view()), path('admin/evangelists/summary', admin_evangelist.SummaryEndpoint.as_view()), path('admin/evangelists', admin_evangelist.ListEndpoint.as_view()), path('admin/evangelists//blogs', admin_evangelist.BlogListEndpoint.as_view()), path('admin/evangelists/', admin_evangelist.DetailEndpoint.as_view()), path('admin/ip-region/regions', admin_ip_region.RegionListEndpoint.as_view()), path('admin/ip-region/users', admin_ip_region.UserListEndpoint.as_view()), path('admin/blog/users', admin_blog.UserListEndpoint.as_view()), path('admin/blog/users//roles', admin_blog.UserRoleEndpoint.as_view()), path('admin/blog/tags', admin_blog.TagListEndpoint.as_view()), path('admin/blog/tags/', admin_blog.TagDetailEndpoint.as_view()), path('admin/asktug/site/config', admin_asktug_site_config.SiteConfigEndpoint.as_view()), ] urlpatterns += [ path('admin/archmage/me-with-permission', archmage.MeWithPermissionEndpoint.as_view()), path('admin/archmage/community-summary', archmage.CommunitySummaryEndpoint.as_view()), path('admin/archmage/community-recently', admin_user_behavior.RecentlyOverviewEndpoint.as_view()), path('admin/archmage/page-summary', archmage.PageSummaryEndpoint.as_view()), path('admin/archmage/page-view-histories', archmage.PageviewHistoryEndpoint.as_view()), path('admin/archmage/users', admin_user.UserListEndpoint.as_view()), ] urlpatterns += [ path('asktug-admin/users/', asktug_admin_helper.UserDetailEndpoint.as_view()), path('asktug-admin/users//activity', asktug_admin_helper.UserActivityDetailEndpoint.as_view()), ]