Campaign
A Campaign is a bounded effort toward a Goal, with a budget, a window, and the Ads or Messages it sends to Audiences.
Properties
| Property | Type | Required | Description |
|---|---|---|---|
budget | money | What it may spend. | |
startsAt | datetime | When it starts. | |
endsAt | datetime | When it ends. |
Object
{
"$id": "https: //api.sb/ tutorloop.com/ campaigns/ campaign_1",
"$type": "Campaign",
"budget": {
"amount": 60,
"currency": "USD"
},
"startsAt": "2026-10-22T12: 00: 00Z",
"endsAt": "2026-10-22T12: 00: 00Z"
}Relationships
- A Campaign advances one Goal: a Campaign spends its budget and window toward one Goal.
advances, inverseadvancedBy. - A Campaign runs many Ads: a Campaign places Ads that share its budget and window.
runs, inverserunIn.
Verbs
createCreates a Campaign.POST /{namespace}/campaignsgetReturns one Campaign by id.GET /{namespace}/campaigns/{id}listReturns Campaigns, newest first, one page at a time.GET /{namespace}/campaignsupdateChanges the given properties of a Campaign.PATCH /{namespace}/campaigns/{id}deleteDeletes a Campaign; its history is kept.DELETE /{namespace}/campaigns/{id}
Permissions
Which Access level may call each Verb. One-way Verbs wait their delay window.
| Operation | owner | admin | member | viewer |
|---|---|---|---|---|
Campaign.create | Yes | Yes | Yes | No |
Campaign.get | Yes | Yes | Yes | Yes |
Campaign.list | Yes | Yes | Yes | Yes |
Campaign.update | Yes | Yes | Yes | No |
Campaign.delete | Yes | Yes | Yes | No |
Call it
Add a campaign to QuietCopy.Example
A three-week Campaign for a dropship store of espresso-machine filters spends $1,500 on short-video Ads. Its Goal is 120 first Orders, and it ends on day 21 even if the Goal falls short.