5
5
from werkzeug .exceptions import NotFound , Unauthorized
6
6
from werkzeug .utils import redirect
7
7
8
- from .._config import ADMIN_PASSWORD , REGISTER_WEBHOOK_TOKEN
8
+ from .._config import ADMIN_PASSWORD , API_KEY_REGISTRATION_FORM_LINK , API_KEY_REMOVAL_REQ_FORM_LINK , REGISTER_WEBHOOK_TOKEN
9
9
from .._security import resolve_auth_token
10
10
from ..admin .models import User , UserRole
11
11
@@ -58,7 +58,7 @@ def _index():
58
58
)
59
59
flags ["banner" ] = "Successfully Added"
60
60
else :
61
- flags ["banner" ] = "User with such email/ api key already exists."
61
+ flags ["banner" ] = "User with such email and/or api key already exists."
62
62
users = [user .as_dict for user in User .list_users ()]
63
63
return _render ("overview" , token , flags , users = users , user = dict ())
64
64
@@ -73,12 +73,10 @@ def _detail(user_id: int):
73
73
User .delete_user (user .id )
74
74
return redirect (f"./?auth={ token } " )
75
75
flags = dict ()
76
- if request .method == "PUT" or request . method == "POST" :
76
+ if request .method in [ "PUT" , "POST" ] :
77
77
user_check = User .find_user (api_key = request .values ["api_key" ], user_email = request .values ["email" ])
78
78
if user_check and user_check .id != user .id :
79
- flags [
80
- "banner"
81
- ] = "Could not update the user because of api_key/email conflict. User with the same api_key/email already exists."
79
+ flags ["banner" ] = "Could not update user; same api_key and/or email already exists."
82
80
else :
83
81
user = user .update_user (
84
82
user = user ,
@@ -95,6 +93,16 @@ def register_new_key(api_key: str, email: str) -> str:
95
93
return api_key
96
94
97
95
96
+ @bp .route ("/registration_form" , methods = ["GET" ])
97
+ def registration_form_redirect ():
98
+ # TODO: replace this with our own hosted registration form instead of external
99
+ return redirect (API_KEY_REGISTRATION_FORM_LINK , code = 302 )
100
+
101
+ @bp .route ("/removal_request" , methods = ["GET" ])
102
+ def removal_request_redirect ():
103
+ # TODO: replace this with our own hosted form instead of external
104
+ return redirect (API_KEY_REMOVAL_REQUEST_LINK , code = 302 )
105
+
98
106
@bp .route ("/register" , methods = ["POST" ])
99
107
def _register ():
100
108
body = request .get_json ()
@@ -106,8 +114,8 @@ def _register():
106
114
user_email = body ["user_email" ]
107
115
if user_exists (user_email = user_email , api_key = user_api_key ):
108
116
return make_response (
109
- "User with such email or API Key already exists, try to use different email or contact us to resolve this issue " ,
117
+ "User with email and/ or API Key already exists, use different parameters or contact us for help " ,
110
118
409 ,
111
119
)
112
120
api_key = register_new_key (user_api_key , user_email )
113
- return make_response (f"Successfully registered the API key '{ api_key } ' and removed rate limit " , 200 )
121
+ return make_response (f"Successfully registered API key '{ api_key } '" , 200 )
0 commit comments