FirstPromoter Promoter Campaigns API

The Promoter Campaigns API from FirstPromoter — 5 operation(s) for promoter campaigns.

Operations 5

PUT /promoter_campaigns/{id} Update promotion ref_token for the promoter_campaign
GET /promoter_campaigns Get available promoter campaigns
GET /promoter_campaigns/search Returns results for promoter campaigns dropdown search. Max results: 5
GET /promoter_campaigns/{id}/referral_links Get promoter campaign referral links #
GET /promoter_campaigns/{id}/chart_data Get data used for chart #

Documentation

📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/payout-methods-api
📖
APIReference
https://docs.firstpromoter.com/api-reference-v2/api-admin/introduction
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/products-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/assets
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/campaigns
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/commissions
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/contract-documents
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/email-settings
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/payout-methods
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/payouts
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/promo-codes
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/promoter-campaigns
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/promoters
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/referral-links
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/referrals
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-affiliate/reports
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/asset-categories-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/assets
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/batches
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/campaigns-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/commissions
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/contract-documents-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/contracts-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/custom-referral-statuses
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/dashboard-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/invoices
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/payments-batches
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/payouts
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/promo-codes
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/promoter-campaigns
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/promoters
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/referrals
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/reports
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-advanced/rewards
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/tracking-api
📖
Documentation
https://docs.firstpromoter.com/api-reference-v2/api-admin/webhooks

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/firstpromoter-promoter-campaigns-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

firstpromoter-promoter-campaigns-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Firstpromoter Promoter Campaigns API
  version: '1.0'
  description: 'Operations tagged Promoter Campaigns across 2 of this provider''s published API definitions: firstpromoter-v2-affiliate-promoter-campaigns-openapi.yml, firstpromoter-v2-promoter-campaigns-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.firstpromoter.com/api/v2/affiliate
- url: https://api.firstpromoter.com/api/v2/company
security:
- BearerAuth: []
tags:
- name: Promoter Campaigns
paths:
  /promoter_campaigns/{id}:
    put:
      summary: Update promotion ref_token for the promoter_campaign
      tags:
      - Promoter Campaigns
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - name: id
        in: path
        required: true
        description: The id of the promoter_campaign to be updated
        schema:
          type: integer
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - ref_token
              properties:
                ref_token:
                  type: string
                  description: The ref_token of the promoter_campaign's promotion
      responses:
        '200':
          description: Promoter campaign updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PromoterCampaign'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Record not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Invalid parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    servers:
    - url: https://api.firstpromoter.com/api/v2/affiliate
  /promoter_campaigns:
    get:
      summary: Get available promoter campaigns
      description: "With this endpoint you can list all promoter campaigns. \n <Tip>**HTTP Request** <br/>`GET https://api.firstpromoter.com/api/v2/company/promoter_campaigns`</Tip>"
      tags:
      - Promoter Campaigns
      parameters:
      - $ref: '#/components/parameters/AccountId_2'
      responses:
        '200':
          description: List of promoter campaigns
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PromoterCampaign_2'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
    servers:
    - url: https://api.firstpromoter.com/api/v2/company
  /promoter_campaigns/search:
    get:
      summary: 'Returns results for promoter campaigns dropdown search. Max results: 5'
      description: "With this endpoint you can search for promoter campaigns. \n <Tip>**HTTP Request** <br/>`GET https://api.firstpromoter.com/api/v2/company/promoter_campaigns/search?q=...`</Tip>"
      tags:
      - Promoter Campaigns
      parameters:
      - $ref: '#/components/parameters/AccountId_2'
      - in: query
        name: q
        required: true
        schema:
          type: string
        description: Search params
      responses:
        '200':
          description: Search results
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PromoterCampaign_2'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
    servers:
    - url: https://api.firstpromoter.com/api/v2/company
  /promoter_campaigns/{id}/referral_links:
    get:
      summary: Get promoter campaign referral links
      operationId: getReferralLinksAssociatedWithThisPromoterCampaign
      description: With this endpoint you can get the referral links associated with this promoter campaign. <Tip>**HTTP Request** <br/>`GET https://api.firstpromoter.com/api/v2/company/promoter_campaigns/{id}/referral_links`</Tip>
      tags:
      - Promoter Campaigns
      parameters:
      - $ref: '#/components/parameters/AccountId_2'
      - in: path
        name: id
        required: true
        schema:
          type: integer
        description: Promoter campaign ID
      responses:
        '200':
          description: List of referral links
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferralLink'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
    servers:
    - url: https://api.firstpromoter.com/api/v2/company
  /promoter_campaigns/{id}/chart_data:
    get:
      summary: Get data used for chart
      tags:
      - Promoter Campaigns
      operationId: getPromoterCampaignChartData
      description: With this endpoint you can get the data used for charts.<Tip>**HTTP Request** <br/>`GET https://api.firstpromoter.com/api/v2/company/promoter_campaigns/{id}/chart_data`</Tip>
      parameters:
      - $ref: '#/components/parameters/AccountId_2'
      - in: path
        name: id
        required: true
        schema:
          type: integer
        description: Promoter campaign ID. This ID is not the promoter’s ID or the campaign’s ID. It’s the linking record that defines the promoter’s participation in that campaign. You can find this id in each object in the promoter_campaigns array when you get the details of the promoter.
      - in: query
        name: period_from
        required: true
        schema:
          type: string
          format: date
      - in: query
        name: period_to
        required: true
        schema:
          type: string
          format: date
      - in: query
        name: selection
        required: true
        schema:
          type: string
          enum:
          - revenue
          - clicks
          - referrals
          - customers
          - cancellations
      - in: query
        name: with_totals
        required: false
        schema:
          type: boolean
        description: If true, it will also return the totals for the period
      responses:
        '200':
          description: Chart data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChartData'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
        '422':
          description: Invalid parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
    servers:
    - url: https://api.firstpromoter.com/api/v2/company
components:
  parameters:
    AccountId:
      name: Account-ID
      in: header
      required: true
      description: Account identifier that specifies which account is making the request
      schema:
        type: string
        example: acc_123456
    AccountId_2:
      name: Account-ID
      in: header
      required: true
      description: Account identifier that specifies which account is making the request
      schema:
        type: string
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
    PromoterCampaign:
      type: object
      properties:
        id:
          type: integer
        campaign_id:
          type: integer
        created_at:
          type: string
          format: date-time
        campaign:
          type: object
          properties:
            id:
              type: integer
            name:
              type: string
            color:
              type: string
        state:
          type: string
          example: accepted
        promoter_id:
          type: integer
        stats:
          type: object
          properties:
            clicks_count:
              type: integer
            referrals_count:
              type: integer
            sales_count:
              type: integer
            customers_count:
              type: integer
            revenue_amount:
              type: number
        coupon:
          type: object
        display_coupon:
          type: object
        ref_token:
          type: string
        ref_link:
          type: string
        has_monetary_rewards:
          type: boolean
        rewards_for_promoters:
          type: array
          items:
            type: object
            properties:
              apply_on:
                type: string
              product_ids:
                type: array
                items:
                  type: string
              reward_id:
                type: integer
              reward:
                type: object
                properties:
                  name:
                    type: string
                  promoter_reward_type:
                    type: string
                  hide_reward:
                    type: boolean
                  tier_level:
                    type: integer
                  coupon:
                    type: object
              products:
                type: object
        rewards_for_referrals:
          type: array
          items:
            type: object
        promo_codes:
          type: array
          items:
            type: object
        recruitment_link_url:
          type: string
        track_ad_traffic:
          type:
          - boolean
          - 'null'
          description: Whether ad traffic tracking is enabled for this promoter campaign
    Promoter:
      type: object
      properties:
        id:
          type: integer
        email:
          type: string
        name:
          type: string
    Error_2:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
      required:
      - message
      - code
    Campaign:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        color:
          type: string
    ReferralLink:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        url:
          type: string
        is_default:
          type: boolean
        source:
          type: string
          enum:
          - campaign
          - promoter
        sub_id:
          type: string
        campaign:
          $ref: '#/components/schemas/Campaign'
    ChartData:
      type: object
      properties:
        period_from:
          type: string
          format: date
        period_to:
          type: string
          format: date
        selection:
          type: string
          enum:
          - revenue
          - clicks
          - referrals
          - customers
          - cancellations
        selection_items:
          type: array
          items:
            type: object
            properties:
              date:
                type: string
                format: date
              value:
                type: number
        group_by:
          type: string
    RewardConfig:
      type: object
      required:
      - apply_on
      - product_ids
      - reward_id
      properties:
        apply_on:
          type: string
          enum:
          - monthly
          - yearly
          - one_time
          - all
          - specific
        product_ids:
          type: array
          items:
            type: integer
        reward_id:
          type: integer
    Reward:
      type: object
      properties:
        apply_on:
          type: string
        product_ids:
          type: array
          items:
            type: integer
        reward_id:
          type: integer
        reward:
          type: object
          properties:
            name:
              type: string
            promoter_reward_type:
              type: string
            hide_reward:
              type: boolean
            tier_level:
              type: integer
            coupon:
              type: string
        products:
          type: array
          items:
            type: object
            properties:
              id:
                type: integer
              name:
                type: string
    PromoterCampaign_2:
      type: object
      properties:
        id:
          type: integer
        campaign_id:
          type: integer
        promoter_id:
          type: integer
        created_at:
          type: string
          format: date-time
        promoter:
          $ref: '#/components/schemas/Promoter'
        campaign:
          $ref: '#/components/schemas/Campaign'
        state:
          type: string
          enum:
          - pending
          - accepted
          - rejected
          - blocked
          - inactive
        stats:
          type: object
          properties:
            clicks_count:
              type: integer
            referrals_count:
              type: integer
            sales_count:
              type: integer
            customers_count:
              type: integer
            revenue_amount:
              type: number
        coupon:
          type: string
        display_coupon:
          type: string
        ref_token:
          type: string
        ref_link:
          type: string
        is_customized:
          type: boolean
        direct_url:
          type: string
        referral_rewards_customized:
          type: boolean
        promoter_rewards_customized:
          type: boolean
        rewards_for_promoters:
          type: array
          items:
            $ref: '#/components/schemas/Reward'
        rewards_for_referrals:
          type: array
          items:
            $ref: '#/components/schemas/Reward'
        promo_codes:
          type: array
          items:
            type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Access token passed as a Bearer token in the Authorization header
    accountId:
      type: apiKey
      in: header
      name: ACCOUNT-ID
      description: Account ID required with bearer token
x-refined-from:
- firstpromoter-v2-affiliate-promoter-campaigns-openapi.yml
- firstpromoter-v2-promoter-campaigns-openapi.yml