MCPcopy Create free account
hub / github.com/coder/coder / deleteUserSkill

Method deleteUserSkill

coderd/userskills.go:282–312  ·  view source on GitHub ↗

@Summary Delete a user skill @ID delete-a-user-skill @Security CoderSessionToken @Tags Users @Param user path string true "User ID, username, or me" @Param skillName path string true "Skill name" @Success 204 @Router /api/experimental/users/{user}/skills/{skillName} [delete] @x-apidocgen {"skip": tr

(rw http.ResponseWriter, r *http.Request)

Source from the content-addressed store, hash-verified

280// @Router /api/experimental/users/{user}/skills/{skillName} [delete]
281// @x-apidocgen {"skip": true}
282func (api *API) deleteUserSkill(rw http.ResponseWriter, r *http.Request) {
283 var (
284 ctx = r.Context()
285 user = httpmw.UserParam(r)
286 name = chi.URLParam(r, "skillName")
287 auditor = api.Auditor.Load()
288 aReq, commitAudit = audit.InitRequest[database.UserSkill](rw, &audit.RequestParams{
289 Audit: *auditor,
290 Log: api.Logger,
291 Request: r,
292 Action: database.AuditActionDelete,
293 })
294 )
295 defer commitAudit()
296
297 deleted, err := api.Database.DeleteUserSkillByUserIDAndName(ctx, database.DeleteUserSkillByUserIDAndNameParams{
298 UserID: user.ID,
299 Name: name,
300 })
301 if err != nil {
302 if httpapi.Is404Error(err) {
303 httpapi.ResourceNotFound(rw)
304 return
305 }
306 httpapi.InternalServerError(rw, err)
307 return
308 }
309 aReq.Old = deleted
310
311 rw.WriteHeader(http.StatusNoContent)
312}
313
314func writeCannotCreateUserSkillForDeletedUser(ctx context.Context, rw http.ResponseWriter) {
315 httpapi.Write(ctx, rw, http.StatusConflict, codersdk.Response{

Callers 1

deleteUserSkillFunction · 0.80

Calls 9

UserParamFunction · 0.92
InitRequestFunction · 0.92
Is404ErrorFunction · 0.92
ResourceNotFoundFunction · 0.92
InternalServerErrorFunction · 0.92
ContextMethod · 0.65
LoadMethod · 0.45
WriteHeaderMethod · 0.45

Tested by

no test coverage detected