launcher.draft_batch.
Before you begin
You need:- A verified Launcher Drive connection whose inventory has already synced.
- A Write or Admin workspace execution token.
- Numeric source Meta ad set and ad IDs from the selected authorized account in that workspace.
Prepare the file
The first row must contain unique supported headers.drive_link is required.
Example CSV:
Limits
Duplicate or unknown headers reject the file. Rows with an empty Drive link, an invalid shape, or an oversized cell are reported as syntactic failures. Valid rows can still create a partial draft.
Send the import
Submit a multipart request to:account_id is the internal Plainrouter advertising-account ID, not the Meta external ID. Supply it when the workspace has multiple eligible active accounts; it can be omitted for the sole eligible account. Older account-bound keys still reject a different account.
Supported modes are:
duplicate_adsetduplicate_adset_per_mediaadd_to_adset
folder_to_adset defaults to false; grouping_enabled defaults to true.
Read the result
The response contains the draft batch, accepted and rejected items, frozen tier and capacity limits, import provenance, andsyntactic_row_failures.
Plainrouter resolves every Drive link against already-synced inventory in the token workspace. Unknown, stale, failed, removed, or cross-workspace assets appear in rejected_items as drive_asset_unresolved.
The import provenance stores the file’s SHA-256 identity, format, row count, and import time. The privately staged upload is deleted after parsing, including when the import fails.
Errors
For direct structured input instead of a file, use
launcher.draft_batch.