/v1/campaigns).
Who can join
Each campaign has a join mode. In the dashboard it’s the Who can join card on the campaign; in the API it’sjoin_mode.
Affiliates see the campaigns they can join in their portal, under More
campaigns you can join. Invite-only and paused campaigns never show there,
and they’re left out of your public marketplace listing too.
Declining a request, or removing someone from a campaign, is remembered. That
affiliate can’t ask to join the same campaign again.
Older integrations may still send
auto_approve. It maps onto the same
setting: true means anyone and false means approve. When you send
both, join_mode wins. Sending auto_approve on an invite-only campaign
opens it, because that’s what the older two-value setting means.The default campaign
Your default campaign is where new affiliates land: signups, marketplace joins and API invites all go there. Your first campaign becomes the default automatically, and you can make another one the default at any time. Because new people land there, the default campaign has two rules:- It can’t be invite only. Nobody could join it otherwise.
- It can’t be paused. To pause it, pick a new default first. The pause
dialog in the dashboard asks you for one and does both in one step. Through
the API, set
make_defaulton another campaign, then pause this one.
Adding affiliates to a campaign
Add every new affiliate automatically (auto_enrol in the API) adds each
new affiliate to the campaign, on top of their main campaign. On a campaign
where you approve each affiliate, they’re added as pending and wait for you.
Everywhere else they’re active straight away. Turning it off removes no one.
When you turn it on and you already have affiliates, the dashboard asks
whether to add your current affiliates as well. Answering Only new ones,
or closing the question, adds nobody. The campaign then shows how many of your
affiliates aren’t in it yet, with an Add them now button. In the API, send
enrol_existing: true when you create the campaign, or add_existing: true
with auto_enrol: true when you update it.
To add one person, open their affiliate page and move them into the campaign.
Paused and archived campaigns add no one, automatically or otherwise.
Review pending memberships in the campaign’s Waiting for your approval
list, or with GET /v1/campaigns/{id}/memberships and
POST /v1/campaigns/{id}/memberships/{affiliate_id}. Until you approve
someone, their sales through that campaign earn their main campaign’s rate.
Pausing a campaign
Pausing stops a campaign without breaking anyone’s links.- Links still land. A visitor who clicks a link on a paused campaign reaches your site as usual. No click is recorded and no one is credited for it.
- An affiliate’s own code keeps working when they belong to another live campaign. Affixo credits your default campaign if they’re in it, otherwise their oldest active campaign.
- New referrals earn nothing. A customer an affiliate first brings in while the campaign is paused earns them no commission, and that stays true after you resume.
- Renewals keep paying. A customer referred before the pause keeps earning the affiliate commission on renewals and later purchases, exactly as before.
- Sales are still recorded. You see every sale, so nothing goes missing. A sale that earns nothing also doesn’t count toward bonuses, levels or contests, and isn’t counted as program revenue.
- Resuming restarts everything for sales made from then on.
A customer counts as “referred before the pause” when, before the pause
began, that affiliate already had a sale or signup from them (same
subscription, Stripe customer, email or visitor), a referral recorded for
their email or Stripe customer, or a manual referral link for them. A click
on its own isn’t enough.