Skip to main content

Group I: Multi-Campaign Batch Publishing

These scenarios involve publishing multiple campaigns simultaneously. Each campaign is processed independently, and partial failures are handled gracefully.
Scenarios in this group:
  • Publishing multiple new campaigns
  • Publishing multiple existing campaigns
  • Mixed new and existing campaigns
  • Partial failure handling
  • Retry workflows for failed campaigns

Scenario I1: Publish Multiple New Campaigns

Setup:
  • Create 5 new campaigns on canvas
  • Each campaign has 2 ad sets and 4 ads
  • Publish all together
Expected Behavior:
Campaign 1: CREATE → Success
  ├─ Ad Set 1a: CREATE → Success
  └─ Ad Set 1b: CREATE → Success
      └─ (4 ads): CREATE → Success

Campaign 2: CREATE → Success
  ├─ Ad Set 2a: CREATE → Success
  └─ Ad Set 2b: CREATE → Success
      └─ (4 ads): CREATE → Success

... (3 more campaigns)

Campaign 5: CREATE → Success
  ├─ Ad Set 5a: CREATE → Success
  └─ Ad Set 5b: CREATE → Success
      └─ (4 ads): CREATE → Success
Result:
  • 5 campaigns created
  • 10 ad sets created (2 per campaign)
  • 20 ads created (4 per campaign)
  • All entities receive platform IDs
Whathead processes campaigns sequentially with platform-specific rate-limit delays between campaigns. Each campaign is processed independently, and partial failures are handled gracefully.

Scenario I2: Publish Multiple Existing Campaigns with Updates

Setup:
  • Load 10 existing campaigns
  • Edit budgets on all 10 campaigns
  • Publish all together
Expected Behavior:
EntityHas ID?Has Changes?ActionResult
Campaign 1-10YesYesUPDATEBudgets updated
Result:
  • All 10 campaigns updated with new budgets
  • 10 API calls made (1 per campaign)
  • Processing happens sequentially with platform-specific delays

Scenario I3: Mixed New and Existing Campaigns

Setup:
  • 3 new campaigns (no IDs)
  • 3 existing campaigns with updates (have IDs, changed)
  • 2 existing campaigns unchanged (have IDs, no changes)
  • Publish all together
Expected Behavior:
EntityHas ID?Has Changes?ActionResult
Campaign 1-3 (new)NoN/ACREATENew campaigns created
Campaign 4-6 (existing, changed)YesYesUPDATECampaigns updated
Campaign 7-8 (existing, unchanged)YesNoSKIPNo API calls
Result:
  • 3 new campaigns created
  • 3 existing campaigns updated
  • 2 existing campaigns skipped
  • 6 API calls made (3 CREATE, 3 UPDATE)
Whathead handles mixed scenarios efficiently. New, updated, and unchanged campaigns are all processed correctly in the same batch.

Scenario I4: Partial Failure - Some Campaigns Succeed, Some Fail

Setup:
  • Publish 5 campaigns
  • Campaign 2 has budget below minimum (validation error)
  • Campaign 4 has missing required field (validation error)
  • Publish
Expected Behavior:
Campaign 1: CREATE → Success
Campaign 2: FAILED → Budget below minimum
Campaign 3: CREATE → Success
Campaign 4: FAILED → Missing required field
Campaign 5: CREATE → Success
Result:
  • Campaigns 1, 3, 5 created successfully
  • Campaigns 2, 4 failed with error messages
  • Successful campaigns receive platform IDs
  • Failed campaigns show error messages
Partial failures are common when publishing many campaigns. Successful campaigns go live, failed campaigns show errors. Fix errors and retry—successful campaigns will be skipped automatically.

Scenario I5: Retry After Partial Failure

Setup:
  • From Scenario I4, fix errors on Campaigns 2 and 4
  • Publish again
Expected Behavior:
EntityHas ID?Has Changes?ActionResult
Campaign 1YesNoSKIPAlready published
Campaign 2NoN/ACREATENow succeeds
Campaign 3YesNoSKIPAlready published
Campaign 4NoN/ACREATENow succeeds
Campaign 5YesNoSKIPAlready published
Result:
  • Campaigns 1, 3, 5 skipped (already published, no changes detected)
  • Campaigns 2, 4 created (errors fixed)
  • Only 2 API calls made (for previously failed campaigns)
After fixing errors, previously successful campaigns are skipped because they have platform IDs and no changes. Only failed campaigns (which never received IDs) are published.

Scenario I6: Parent Failure Blocks Children

Setup:
  • Publish 3 campaigns
  • Campaign 2 fails (budget error)
  • Campaign 2 has 5 ad sets and 10 ads configured
  • Publish
Expected Behavior:
Campaign 1: CREATE → Success
  └─ (Ad sets and ads): CREATE → Success

Campaign 2: FAILED → Budget error
  └─ (Ad sets and ads): NOT PUBLISHED (parent failed)

Campaign 3: CREATE → Success
  └─ (Ad sets and ads): CREATE → Success
Result:
  • Campaigns 1 and 3 published with all children
  • Campaign 2 failed, so its ad sets and ads were not published
  • Fix Campaign 2 and retry to publish it with its children
If a parent entity fails, its children are not published. This prevents orphaned entities. Fix the parent error and retry to publish the entire campaign structure.

Scenario I7: Publishing Across Multiple Platforms

Setup:
  • 2 Meta campaigns
  • 2 TikTok campaigns
  • 2 Snapchat campaigns
  • Publish all together
Expected Behavior:
Meta Campaign 1: CREATE → Success
Meta Campaign 2: CREATE → Success

TikTok Campaign 1: CREATE → Success
TikTok Campaign 2: CREATE → Success

Snapchat Campaign 1: CREATE → Success
Snapchat Campaign 2: CREATE → Success
Result:
  • All 6 campaigns created
  • Each platform processed independently
  • Platform-specific validation applied to each
Whathead can publish to multiple platforms simultaneously. Each platform is processed independently with its own validation rules.

Scenario I8: Platform Failure Doesn’t Affect Other Platforms

Setup:
  • 2 Meta campaigns
  • 2 TikTok campaigns (one has error)
  • Publish all together
Expected Behavior:
Meta Campaign 1: CREATE → Success
Meta Campaign 2: CREATE → Success

TikTok Campaign 1: CREATE → Success
TikTok Campaign 2: FAILED → Validation error

Result:
  • Both Meta campaigns published successfully
  • TikTok Campaign 1 published successfully
  • TikTok Campaign 2 failed
  • Meta campaigns unaffected by TikTok failure
Platform failures are isolated. If one platform has issues, other platforms continue publishing successfully.

Partial Failure Handling

When publishing multiple campaigns, Whathead handles partial failures gracefully:
1

Validation runs

All campaigns are validated before publishing. Campaigns with errors are flagged.
2

Publishing begins

Valid campaigns begin publishing. Invalid campaigns are skipped with error messages.
3

Independent processing

Each campaign is processed independently. One campaign’s failure doesn’t affect others.
4

Results displayed

You see success or failure status for each campaign with detailed error messages for failures.
5

Retry workflow

Fix errors on failed campaigns and retry. Successful campaigns are automatically skipped.

Common Questions

Successful campaigns are published and go live. Failed campaigns show error messages. Fix the errors and retry—successful campaigns will be skipped automatically because they have platform IDs and no changes.
Yes. Whathead can publish to multiple platforms simultaneously. Each platform is processed independently.
If a campaign fails, its ad sets and ads are not published. This prevents orphaned entities. Fix the campaign error and retry to publish the entire structure.
You don’t need to do anything special. Just fix the errors and click Publish again. Successful campaigns are automatically skipped because they have platform IDs and no changes, while failed campaigns (which never received IDs) are published.
Yes. You can cancel publishing, but entities that were already created or updated remain live on the platform. Canceling stops future API calls but doesn’t roll back completed ones.

Next Steps