✉️ Send a campaign by API

MCM

Member
1. I want to automate sending campaigns in MailWizz API

2. I copied a campaign by
POST https://mailwizz.com/api/index.php/campaigns/nh251rq9ma5f7/copy (https://api-docs.mailwizz.com/#copy-a-campaign)

3. I changed some info in the email by
PUT https://mailwizz.com/api/index.php/campaigns/br752zt246ce6 (https://api-docs.mailwizz.com/#update-a-campaign),
JSON was {"campaign": { "name": "email1", "send_at": "2025-07-14 10:00:00"}}, and it worked ✅

4. Now I need to send it - but there is nothing in the docs about it. I don't know how to do it. I tried to send a payload { "campaign": { "status": "sending"}} and a few others, nothing works, status is still in "draft"

Please help me
 
4. Now I need to send it - but there is nothing in the docs about it. I don't know how to do it. I tried to send a payload { "campaign": { "status": "sending"}} and a few others, nothing works, status is still in "draft"
Hello,
Can you try to make this in postman? and share with us a picture with params sent and the response received?
I test this on our dev app and it's working correctly, this is how i set the params:

PHP:
$response = $endpoint->create([
    'name'          => 'My API Campaign', // required
    'type'          => 'regular', // optional: regular or autoresponder
    'from_name'     => 'John Doe', // required
    'from_email'    => 'john.doe@doe.com', // required
    'subject'       => 'Hey, i am testing the campaigns via API', // required
    'reply_to'      => 'john.doe@doe.com', // required
    'send_at'       => date('Y-m-d H:i:s', strtotime('+10 hours')), // required, this will use the timezone which customer selected
    'list_uid'      => 'gs2xxxxl8qc255', // required
    'segment_uid'   => '',// optional, only to narrow down
    'status'        => 'pending-sending',

    // optional block, defaults are shown
    'options' => [
        'url_tracking'      => 'no', // yes | no
        'json_feed'         => 'no', // yes | no

Best,
Laurentiu
 
Back
Top