Promoter Accepted (promoter_accepted) webhook
Virgil avatar
Written by Virgil
Updated over a week ago

The 'promoter_accepted' webhook is fired when a promoter is accepted to a campaign, either by you or automatically on sign up(if you have "Auto-accept promoters" option enabled for the campaign). It also fires when the promoter is switched/moved to another campaign.

The most important data sent with the webhook event payload:


This object contains information about the event webhook. The most important fields are:

  • type - eq. "promoter_accepted" - webhook event type. All webhooks contain the event.type field, you need to use this field in a condition to determine the actions needed to take for this kind of webhook.

  • created_at - eq. "2017-10-13T15:46:01.606Z" - date and time when the event occurred.


This object contains the data of the object who determined the event.

  • state - eq. "accepted" - current state of the promoter in relation with the campaign. Most likely it will be "accepted" in this case.

  • promoter - JSON containing information about the promoter 

  • promotion - JSON containing information about the promotion generated for the promoter together with the referral id

  • campaign - JSON with information about the campaign where the promoter is accepted

Promoter JSON :

  • id - eq. "234" - id of the promoter

  • cust_id - eq "23452" - an ID to help you identify the promoter in you system in case he/she is a customer/user.

  • earnings_balance - eq. "{'cash' : 20000}" or "{'free_month' : 2} or "{'credits' : 20}- JSON containing the total amount of rewards promoter earned

  • current_balance - JSON containing remaining amounts after payments/fulfillments

  • paid_balance - JSON containing paid/fulfilled amounts

  • auth_token - eq "da954kn43856nacueroytnjrwg46k5" - authentication token

  • email - promoter email

  • temp_password - eq. "dsf23fd3" - temporary password generated - can be used for login only if the promoter sign up page doesn't include the password field and promoter hasn't set his own password

  • profile - eq. "{'first_name':'John', 'website':''}" - JSON containing information about the promoter including name, website, social accounts, etc

Promotion JSON:

  • campaign_id - eq. "234" - id of the campaign where the promotion runs;

  • promoter_id - eq "23452" - id of the promoter/affiliate who runs this promotion;

  • status - eq. "offer_running" or "offer_inactive" - current offer status;

  • promo_code - eq. "JOHN20" - discount/credit coupon used(if applied);

  • ref_id - eq. "johndoe" - the promotion referral id;

  • referral_link - eq. "" - the promotion referral link;

  • current_offer - eq. "{ 'name': '1 free month', amount: 1, unit: 'free_months'}" - JSON with information about the current offer available to the lead. If the promotion status is "offer_running" than you can apply it to the lead

To add a webhook in FirstPromoter, you will need to access Campaigns - Edit Campaign - Finish - Show extra options (campaign level-up and webhooks) - Webhook URLs - Add the desired webhook URL and test it by clicking on "Test webhook" - Save.

Did this answer your question?