public async Task <bool> PutVolunteerCredential(string u, string g, string c, [FromBody] AssignCredentialsViewModel assignCredentialsViewModel, CancellationToken cancellationToken) { int targetUserId = Base64Utils.Base64DecodeToInt(u); int groupId = Base64Utils.Base64DecodeToInt(g); int credentialId = Base64Utils.Base64DecodeToInt(c); var user = await _authService.GetCurrentUser(HttpContext, cancellationToken); DateTime?validUntil = assignCredentialsViewModel.ValidUntil == "Null" ? (DateTime?)null : DateTime.ParseExact(assignCredentialsViewModel.ValidUntil, DatePickerHelpers.DATE_PICKER_DATE_FORMAT, new CultureInfo("en-GB")); PutGroupMemberCredentialsRequest putGroupMemberCredentialsRequest = new PutGroupMemberCredentialsRequest() { AuthorisedByUserID = user.ID, UserId = targetUserId, GroupId = groupId, CredentialId = credentialId, Reference = assignCredentialsViewModel.Reference, Notes = assignCredentialsViewModel.Notes, ValidUntil = validUntil, }; return(await _groupMemberService.PutGroupMemberCredentials(putGroupMemberCredentialsRequest)); }