Usually GET operations support parameters on the path or the query string only so they're not suitable for complex types such as Lists or Arrays.
On the other hand you can pass a collection as a
body parameter to a POST operation.
So you would have to either change the operation to a POST, or make the argument a delimited string that you can process on the server side to produce the array
[DataContract]
public class UserIdParams
{
[DataMember]
public int UserId { get; set; }
[DataMember]
public string DelimitedUserIds { get; set; }
}
string DelimitedUserIds = "9,3,12,43,2"
List<int> UserIds = DelimitedUserIds .Split(',').Select(int.Parse).ToList();
Again I would suggest to make it a POST and send params in the body.