@@ -1046,6 +1046,23 @@ public ImpersonationToken createPersonalAccessToken(
1046
1046
userIdOrUsername , name , description , expiresAt , scopes , false );
1047
1047
}
1048
1048
1049
+ /**
1050
+ * Create a personal access token for your account.
1051
+ *
1052
+ * <pre><code>GitLab Endpoint: POST /user/personal_access_tokens</code></pre>
1053
+ *
1054
+ * @param name the name of the personal access token, required
1055
+ * @param description description of personal access token, optional
1056
+ * @param expiresAt the expiration date of the personal access token, optional
1057
+ * @param scopes an array of scopes of the personal access token. Only accepts k8s_proxy.
1058
+ * @return the created PersonalAccessToken instance
1059
+ * @throws GitLabApiException if any exception occurs
1060
+ */
1061
+ public ImpersonationToken createPersonalAccessToken (String name , String description , Date expiresAt , Scope [] scopes )
1062
+ throws GitLabApiException {
1063
+ return createPersonalAccessTokenOrImpersonationToken (null , name , description , expiresAt , scopes , false );
1064
+ }
1065
+
1049
1066
/**
1050
1067
* Revokes a personal access token. Available only for admin users.
1051
1068
*
@@ -1086,8 +1103,19 @@ private ImpersonationToken createPersonalAccessTokenOrImpersonationToken(
1086
1103
}
1087
1104
1088
1105
String tokenTypePathArg = impersonation ? "impersonation_tokens" : "personal_access_tokens" ;
1089
- Response response = post (
1090
- Response .Status .CREATED , formData , "users" , getUserIdOrUsername (userIdOrUsername ), tokenTypePathArg );
1106
+
1107
+ Response response ;
1108
+ if (userIdOrUsername != null ) {
1109
+ response = post (
1110
+ Response .Status .CREATED ,
1111
+ formData ,
1112
+ "users" ,
1113
+ getUserIdOrUsername (userIdOrUsername ),
1114
+ tokenTypePathArg );
1115
+ } else {
1116
+ response = post (Response .Status .CREATED , formData , "user" , tokenTypePathArg );
1117
+ }
1118
+
1091
1119
return (response .readEntity (ImpersonationToken .class ));
1092
1120
}
1093
1121
0 commit comments