public async Task <IActionResult> SetPropertyAsync(string subject, string type) { if (IsNullOrWhiteSpace(subject)) { ModelState["subject.String"].Errors.Clear(); ModelState.AddModelError("", Messages.SubjectRequired); } type = type.FromBase64UrlEncoded(); var value = await Request.Body.ReadAsStringAsync(); var meta = await GetMetadataAsync(); ValidateUpdateProperty(meta.UserMetadata, type, value); if (ModelState.IsValid) { var result = await service.SetUserPropertyAsync(subject, type, value); if (result.IsSuccess) { return(NoContent()); } ModelState.AddErrors(result); } return(BadRequest(ModelState.ToError())); }