Skip to main content
POST
/
commissions
Create a commission
curl --request POST \
  --url https://api.firstpromoter.com/api/v2/company/commissions \
  --header 'Account-ID: <account-id>' \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "commission_type": "sale",
  "referral_id": 123,
  "plan_id": 123,
  "promoter_campaign_id": 123,
  "sale_amount": 123,
  "amount": 123,
  "event_id": "<string>",
  "event_date": "2023-12-25",
  "internal_note": "<string>",
  "unit": "cash",
  "notify_promoter": true,
  "billing_period": "monthly"
}'
[
  {
    "id": 123,
    "status": "pending",
    "metadata": {},
    "is_self_referral": true,
    "commission_type": "sale",
    "created_by_user_email": "<string>",
    "created_by_user_at": "2023-11-07T05:31:56Z",
    "sale_amount": 123,
    "original_sale_amount": 123,
    "original_sale_currency": "<string>",
    "event_id": "<string>",
    "plan_id": "<string>",
    "tier": 123,
    "internal_note": "<string>",
    "external_note": "<string>",
    "unit": "cash",
    "fraud_check": "no_suspicion",
    "amount": 123,
    "is_paid": true,
    "is_split": true,
    "created_at": "2023-11-07T05:31:56Z",
    "status_updated_at": "2023-11-07T05:31:56Z",
    "promoter_campaign": {
      "id": 123,
      "campaign_id": 123,
      "promoter_id": 123,
      "created_at": "2023-11-07T05:31:56Z",
      "promoter": {
        "id": 123,
        "email": "<string>",
        "name": "<string>"
      },
      "campaign": {
        "id": 123,
        "name": "<string>",
        "color": "<string>"
      }
    },
    "referral": {
      "id": 123,
      "email": "<string>",
      "uid": "<string>"
    },
    "reward": {
      "id": 123,
      "name": "<string>"
    }
  }
]

Authorizations

Authorization
string
header
required

API key passed as a Bearer token in the Authorization header. You can find your API Key on Your FirstPromoter Dashboard. Navigate to Settings → Integrations section → Manage API Keys

Headers

Account-ID
string
required

Account id. You can find your Account ID on Your FirstPromoter Dashboard. Navigate to Settings → Integrations

Body

application/json
commission_type
enum<string>
required

The commission type

Available options:
sale,
custom
sale_amount
integer
required

Sale amount required only for sale commission type

amount
integer
required

Commission amount required only for custom commission type

referral_id
integer

Referral id required only for sale commission type

plan_id
integer

One of the items id from price_ids

promoter_campaign_id
integer

PromoterCampaign id required for custom commission type

event_id
string

The ID of the event that generated the sale from billing provider

event_date
string<date>

The date of the event that generated the sale

internal_note
string

Internal note visible only by the team

unit
enum<string>

Set the reward unit type

Available options:
cash,
credits,
points,
free_months,
mon_discount,
discount_per
notify_promoter
boolean

If true a notification email is sent to promoter if enabled on Emails section

billing_period
enum<string>

The billing period of the event that generated the sale

Available options:
monthly,
yearly,
one_time

Response

Successfully retrieved commissions

id
integer

Commission ID

status
enum<string>

Current status of the commission

Available options:
pending,
approved,
denied
metadata
object

Additional metadata about the commission

is_self_referral
boolean | null

Whether this is a self-referral

commission_type
enum<string>

Type of commission

Available options:
sale,
custom
created_by_user_email
string | null

Email of the user who created the commission

created_by_user_at
string<date-time> | null

Timestamp when the user created the commission

sale_amount
integer

Amount of the sale

original_sale_amount
integer

Original amount of the sale

original_sale_currency
string | null

Currency of the original sale

event_id
string | null

ID of the event that generated the commission

plan_id
string | null

Plan ID associated with the commission

tier
integer

Reward tier

internal_note
string | null

Internal note visible only to the team

external_note
string | null

External note visible to the promoter

unit
enum<string>

Unit type for the reward

Available options:
cash,
credits,
points,
free_months,
mon_discount,
discount_per
fraud_check
enum<string> | null

Result of fraud check

Available options:
no_suspicion,
same_ip_suspicion,
same_promoter_email,
ad_source
amount
integer

Commission amount

is_paid
boolean

Whether the commission has been paid

is_split
boolean

Whether the commission is split among multiple promoters

created_at
string<date-time>

Creation timestamp

status_updated_at
string<date-time> | null

Last status update timestamp

promoter_campaign
object
referral
object | null
reward
object
I