Mailchimp API 2.0 - 使用已保存的细分创建广告系列

I'm trying to create a campaign through Mailchimp API 2.0 for a saved segment.

My code is:

$segment_opts = [
    'list_id' => $list_id, 
    ['saved_segment_id' => Yii::$app->request->post('segments')],
];

$campaign = Yii::$app->mailchimp->campaigns->create($type, $options, $content, $segment_opts);

And the error is:

Mailchimp_Invalid_Options

"match" must be "any" or "all"

I don't get it why, since I'm sending a saved_segment_id, and I'm not supposed to send also a match and condition. Even if I add match = 'any' and an empty array of conditions, i get the same error message.

Any ideas about what I'm doing wrong?

Thanks in advance!

If you are doing a REST API integration your object should look like this:

segment_opts: {
            list_id: [STRING list_id],
            saved_segment_id: [INT segment_id]
        }

And found the problem. There should not be an array for saved_segment_id. So the correct code is:

$segment_opts = [
    'list_id'=>$list_id,
    'saved_segment_id'=>Yii::$app->request->post('segments')
];
$campaign = Yii::$app->mailchimp->campaigns->create($type, $options, $content, $segment_opts);