Multi picklist updates via API malformed?

Has anyone else found the magic to get a multi picklist to set correctly using the API?  I'm sending through a comma delimited list as I've seen noted in a couple other places, but this:

{
    "contract": {
        "custom_fields_values": {
            "custom_fields_value": [
                {
                    "name": "test",
                    "value": "2, test1"
                }
            ]
        }
    }
}
This results in a new single string value instead of having both of the individual options selected.  Looking at the raw value specifically, you can see the array is a single string instead of two individual strings.
            "name": "test",
            "value": "2, test1",
            "attachment": null,
            "options": "test1\n2\nthird",
            "type": 8,
            "type_name": "multi_picklist",
            "entity": null,
            "user": null,
            "raw_value": [
                "2, test1"
            ]

If I set the value for that field through the UI so it appropriately selects those two options it looks like this:
            "name": "test",
            "value": "2, test1",
            "attachment": null,
            "options": "test1\n2\nthird",
            "type": 8,
            "type_name": "multi_picklist",
            "entity": null,
            "user": null,
            "raw_value": [
                "2",
                "test1"
            ]
Anyone know if there's a different delimiter that needs to be passed in to the value so the form reads each individual entry as an string in an array instead of just turning them into a single new string?