> For the complete documentation index, see [llms.txt](https://docs.sparkloop.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sparkloop.app/api-v3/objects-schema/campaign-object.md).

# Campaign Object

## Campaign Object

A tracking link a publisher drops into their emails. (Dashboard label: "In-email Campaign".)

| Field        | Type                     | Description                                                                                                                                                        |
| ------------ | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `uuid`       | String                   | Campaign UUID.                                                                                                                                                     |
| `name`       | String                   | Campaign name.                                                                                                                                                     |
| `public_url` | String                   | The public tracking URL.                                                                                                                                           |
| `email_url`  | String                   | The URL to embed in emails.                                                                                                                                        |
| `type`       | String                   | `recommendations_hub`, `specific_recommendation`, `offers_hub`, or `specific_offer`.                                                                               |
| `target`     | String \| Object \| null | What the link points at. A UUID by default; the full recommendation/joined-offer object with `expand=target` (single campaign only). `null` for the two hub types. |
| `stats`      | Object                   | Performance. Present only with `expand=stats`.                                                                                                                     |

**`stats`** (only with `expand=stats`)

Recommendation-side campaigns (`recommendations_hub`, `specific_recommendation`) report `clicks`, `referrals`, and `earnings` (`confirmed`, `estimated_pending`, `total`). Offer-side campaigns (`offers_hub`, `specific_offer`) report `clicks`, `conversions`, and `earnings` (`confirmed` only).

**Example (`specific_recommendation`, `expand=stats`)**

```json
{
  "uuid": "lc_2b3c4d5e",
  "name": "June newsletter — Morning Brew",
  "public_url": "https://sparkloop.app/p/2b3c4d5e",
  "email_url": "https://link.sparkloop.app/p/2b3c4d5e",
  "type": "specific_recommendation",
  "target": "rec_a6224cd65cf3",
  "stats": {
    "clicks": 940,
    "referrals": 120,
    "earnings": { "confirmed": 240.0, "estimated_pending": 37.5, "total": 277.5 }
  }
}
```
