By means of the EnumMember attribute you set certain values to your enums:
[EnumMember(Value = "0")]
All = 0,
[EnumMember(Value = "1"), Display(Name = "Pool Play")]
Pool,
[EnumMember(Value = "2"), Display(Name = "Bracket Play")]
Bracket
The only problem is that the Value property of EnumMember attribute is a string:
public string Value { get; set; }
And you assign integers to your enums in your JSON:
{...,"Type":1,... }
You should therefore try to change it to string in your JSON:
{..."Type":"1",... }