---
title: "Ship Your First Campaign. Metadata Developer Docs"
url: https://metadata.io/developers/guides/first-campaign
description: "End-to-end walkthrough: build an audience, generate creative, assemble a campaign, and launch — from an agent."
source: metadata.io
---

# Ship Your First Campaign

In the next ~15 minutes you'll have an agent that takes a natural-language brief (*"target mid-market SaaS VPs in the US, push our demo offer"*) and produces a draft campaign for LinkedIn and Meta, with human approval gates in the right places before anything goes live.

**Governed execution:** Metadata has 299 public G2 reviews and the MCP workflow keeps campaign work reviewable before spend moves.

**Prerequisite:** You have an [API key](https://metadata.io/developers/authentication.html) with `read:all`, `write:audiences`, `write:creatives`, `write:campaigns`, and `launch:campaigns` scopes. Connected ad channels in your account (LinkedIn + Meta at minimum), check with `get_integrations_status`.

## 1. Establish context

Every agent run should start by grounding the model in the account's current state:

Total cost so far: **4 credits** (4×1).

## 2. Build the audience

Start cheap, always `estimate_target_group` before creating. If the estimate is under 10K members on LinkedIn or 50K on Meta, broaden the criteria.

Cost: **6 credits** (estimate 1 + create 5).

## 3. Generate on-brand creatives

`generate_brand_creative` reads the brand kit (colors, fonts, logo, voice) and produces assets sized for each channel you'll run on.

Cost: **25 credits**. Use `edit_brand_creative` (10 cr) for tweaks rather than regenerating.

## 4. Assemble the offer

## 5. Assemble the campaign, in Draft

**Important:** `create_campaign` always creates in `Draft`. No real spend happens until you call `launch_campaign`. Always show the draft to a human before launching.

## 6. Human approval gate → launch

This is the single most important pattern in agentic advertising. The agent never launches spend without explicit human confirmation.

Cost for steps 4–6: **35 credits** (offer 5 + campaign 10 + launch 25 − 5 parity).

## 7. Close the loop

After 24h of data, re-engage. This is where agents earn their keep, they can run this loop on every campaign, every day, without getting tired.

## Total cost to ship

| Step | Tools called | Credits |
|---|---|---|
| 1. Context | `get_account_details`, `get_integrations_status`, `get_credit_balance`, `get_brand_kit` | 4 |
| 2. Audience | `estimate_target_group`, `create_firmographic_audience` | 6 |
| 3. Creative | `generate_brand_creative` | 25 |
| 4. Offer | `find_privacy_url`, `create_update_offer` | 6 |
| 5. Campaign | `create_campaign` | 10 |
| 6. Launch | `launch_campaign` | 25 |
| 7. Optimize (daily) | `deep_funnel_stats`, `performance_metrics` | 6 / day |
| **Total to launch** | **76 cr** |
| **+ 30 days of daily optimization** | **180 cr** |

At **Command Center** tier ($0.10/credit), shipping and running a month-long campaign costs roughly **$25 in API calls**. If the ad spend is $15,000 (30 days × $500), that's 0.17% of media spend.
