Affise Affiliate Offers API

Affiliate offer listing, live offers, activation

Operations 7

GET /3.0/partner/offers Offer list
GET /3.0/partner/live-offers Live offer list
POST /3.0/partner/activation/offer Activation offer
GET /3.1/offers/promocodes List of promocodes
GET /3.0/offers Offers list
GET /3.0/offer/{id} Offer by id
GET /3.0/offer/categories Categories

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/affise-affiliate-offers-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

affise-affiliate-offers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Documentation Affiliate Offers API
  version: '3.2'
  x-logo:
    altText: Affise API documentation.
    url: affise_logo.svg
    backgroundColor: '#fafafa'
  description: 'API 3.1 documentation.


    Authorization


    ```shell

    curl --header "API-Key:23df424b0a53b0899f78685966243ee61" http://YOUR_API_DOMAIN/

    or

    curl http://YOUR_API_DOMAIN/some_path?API-Key=23df424b0a53b0899f78685966243ee61

    ```



    For data exchange using authentication public key passed as parameter in the header API-Key. As the key, a hash generated for your site. API key, you can see in your profile.


    Find out more about where you can get your API URL, API-key and personal API-key for Affiliate here - [Getting Started with API](https://help-center.affise.com/en/articles/6463675-start-with-api-networks)


    Postman collection


    A ready-to-use Postman collection covering all endpoints of this documentation is available in the [affise-postman-api-collection](https://github.com/affise/affise-postman-api-collection) repository. Import the collection together with the Demo environment, set your `baseUrl` and API keys in the environment variables, and you are ready to send requests.


    <aside class="warning">

    All API requests must include an API-Key header or API-Key GET parameter for client authentication.

    </aside>

    '
servers:
- url: https://api-demo.affise.com
  description: Demo Server
  variables:
    api-key:
      default: 685168e94e6a96fa7c31895e
      description: Demo Test API Key
tags:
- name: affiliate-offers
  x-displayName: Offers
  description: Affiliate offer listing, live offers, activation
paths:
  /3.0/partner/offers:
    get:
      tags:
      - affiliate-offers
      summary: Offer list
      description: '`GET /3.0/partner/offers`


        Get list of available partner offers

        '
      parameters:
      - name: api-key
        in: header
        description: API key
        required: true
        schema:
          type: string
        example: 23df424b0a53b0899f78685966243ee61
      - name: q
        in: query
        description: Search by title and id
        schema:
          type: string
      - name: int_id
        in: query
        description: Search by int offer ID
        schema:
          type: array
          items:
            type: integer
          example:
            int_id[0]: 1
      - name: countries
        in: query
        description: Array of offers countries(ISO)
        schema:
          type: array
          items:
            type: string
          example:
            countries[0]: USA
      - name: categories
        in: query
        description: Array of offers categories
        schema:
          type: array
          items:
            type: string
          example:
            categories[0]: 46cc97dc3b7d9b10758b45f0
      - name: caps_country
        in: query
        description: Comma separated array of strings. Example US,DE. If one or more cap filters are set (caps_country, caps_type), other filters are ignored
        schema:
          type: string
      - name: caps_type
        in: query
        description: Comma separated array of strings. Example clicks,conversions,budget,impressions. If one or more cap filters are set (caps_country, caps_type), other filters are ignored. This filter will not show offers for the selected cap type if the cap is full
        schema:
          type: string
      - name: sort
        in: query
        description: Sort offers. Sample sort[id]=asc, sort[title]=desc. You can sort offers by one of (id, title, cr, epc)
        schema:
          type: array
          items:
            type: string
          example:
            sort[title]: desc
      - name: page
        in: query
        description: Page of offers
        schema:
          type: integer
      - name: limit
        in: query
        description: Count offers by page
        schema:
          type: integer
          default: 100
          maximum: 500
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  offers:
                    type: array
                    items:
                      $ref: '#/components/schemas/offer_affiliate'
                  pagination:
                    type: object
                    properties:
                      per_page:
                        type: integer
                      total_count:
                        type: integer
                      page:
                        type: integer
                      next_page:
                        type: integer
              example:
                status: 1
                offers:
                - id: 902
                  offer_id: 5718dac83b7d9bf8588b4579
                  bundle_id: 46cc97dc3b7d9b10758b45f0
                  title: '...'
                  preview_url: '....'
                  description_lang:
                    cn: ''
                    en: ''
                    es: ''
                    ka: ''
                    my: ''
                    pt: ''
                    ru: ''
                    vi: ''
                  cr: 199850
                  epc: 298988.33
                  logo: http://YOUR_API_DOMAIN/images/cpa/logos/2602108452.png
                  logo_source: '...'
                  sources:
                  - id: 51f531f53b7d9b1e0382f6d9
                    title: Web sites
                    allowed: 1
                  categories:
                  - '...'
                  full_categories:
                  - id: 5368afb23b7d9b4d5d505342
                    title: '...'
                  payments:
                  - countries:
                    - US
                    cities: []
                    devices: []
                    os: []
                    goal: '1'
                    revenue: 0
                    currency: usd
                    title: ''
                    type: fixed
                    country_exclude: true
                  caps:
                  - goals: {}
                    period: day
                    type: conversions
                    value: 10
                    goal_type: all
                    country_type: all
                    country: []
                  caps_status: []
                  stop_at: ''
                  required_approval: true
                  is_cpi: false
                  creatives: []
                  creatives_zip: null
                  impressions_link: null
                  landings: []
                  macro_url: null
                  links:
                  - id: null
                    title: null
                    hash: null
                    url: http://YOUR_API_DOMAIN/click?pid=610&offer_id=902
                    postbacks: []
                    created: null
                  link: http://YOUR_API_DOMAIN/click?pid=610&offer_id=902
                  use_https: false
                  use_http: true
                  hold_period: 0
                  kpi:
                    en: ''
                  click_session: 1y
                  targeting:
                  - name: default targeting
                    condition: and
                    country:
                      allow: []
                      deny: []
                    region:
                      allow: []
                      deny: []
                    city:
                      allow: []
                      deny: []
                    os:
                      allow: []
                      deny: []
                    os_deny: false
                    isp:
                      allow: []
                      deny: []
                    isp_organization:
                      allow: []
                      deny: []
                      deny_empty: false
                    ip:
                      allow: []
                      deny: []
                      ipv6_deny: false
                    browser:
                      allow: []
                      deny: []
                    browser_version:
                      allow: []
                      deny: []
                    brand:
                      allow: []
                      deny: []
                    device_type: []
                    device_type_deny: false
                    device_model:
                      allow: []
                      deny: []
                    connection: []
                    connection_deny: false
                    referrer:
                      allow: []
                      deny: []
                      deny_empty: false
                    ua:
                      allow: []
                      deny: []
                      deny_crawlers: false
                    id: 991f9eb4-0f12-4e6a-805a-1ed7aab01ef4
                    block_proxy: false
                  commission_tiers:
                  - id: e09f260e-8461-4b7d-aa30-3c164a70c1bc
                    goals: []
                    timeframe: all
                    type: conversions
                    value: 1
                    target_goals: []
                    modifier_type: by_fix
                    modifier_value: 0.0002
                    countries: []
                    conversion_status:
                    - confirmed
                    - declined
                    - pending
                    - hold
                    modifier_payment_type: payout
                  minimal_click_session: 0s
                  enabled_commission_tiers: true
                  consider_personal_targeting_only: false
                  hosts_only: false
                  uniq_ip_only: false
                  reject_not_uniq_ip: 0
                pagination:
                  per_page: 1
                  total_count: 127
                  page: 1
                  next_page: 2
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      x-codeSamples:
      - lang: cURL
        label: cURL
        source: "curl --request GET \\\n  --url 'https://api-demo.affise.com/3.0/partner/offers?int_id[0]=1&countries[0]=USA&categories[0]=46cc97dc3b7d9b10758b45f0&sort[title]=desc&limit=100' \\\n  --header 'api-key: 23df424b0a53b0899f78685966243ee61'"
  /3.0/partner/live-offers:
    get:
      tags:
      - affiliate-offers
      summary: Live offer list
      description: '`GET /3.0/partner/live-offers`


        Get list of a live offers

        '
      parameters:
      - name: api-key
        in: header
        description: API key
        required: true
        schema:
          type: string
        example: 23df424b0a53b0899f78685966243ee61
      - name: q
        in: query
        description: Search by title and id
        schema:
          type: string
      - name: int_id
        in: query
        description: Search by int offer ID
        schema:
          type: array
          items:
            type: integer
          example:
            int_id[0]: 235
      - name: countries
        in: query
        description: Array of offers countries(ISO)
        schema:
          type: array
          items:
            type: string
          example:
            countries[0]: DE
      - name: categories
        in: query
        description: Array of offers categories
        schema:
          type: array
          items:
            type: string
          example:
            categories[0]: 46cc97dc3b7d9b10758b45f0
      - name: caps_country
        in: query
        description: Comma separated array of strings. Example US,DE. If one or more cap filters are set (caps_country, caps_type), other filters are ignored
        schema:
          type: string
      - name: caps_type
        in: query
        description: Comma separated array of strings. Example clicks,conversions,budget,impressions. If one or more cap filters are set (caps_country, caps_type), other filters are ignored
        schema:
          type: string
      - name: sort
        in: query
        description: Sort offers. Sample sort[id]=asc, sort[title]=desc. You can sort offers by one of (id, title, cr, epc)
        schema:
          type: array
          items:
            type: string
          example:
            sort[id]: asc
      - name: page
        in: query
        description: Page of offers
        schema:
          type: integer
      - name: limit
        in: query
        description: Count offers by page
        schema:
          type: integer
          default: 100
          maximum: 500
      - name: ids
        in: query
        description: Array of offer IDs
        schema:
          type: array
          items:
            type: string
          example:
            ids[0]: 5718dac83b7d9bf8588b4579
      - name: os
        in: query
        description: Array of OS names
        schema:
          type: array
          items:
            type: string
          example:
            os[0]: Android
      - name: is_top
        in: query
        description: Filter top offers
        schema:
          type: integer
          enum:
          - 0
          - 1
      - name: updated_at
        in: query
        description: Show offers updated starting from this date (YYYY-MM-DD)
        schema:
          type: string
          format: date
      - name: smartlink_categories
        in: query
        description: Array of smartlink category IDs
        schema:
          type: array
          items:
            type: string
          example:
            smartlink_categories[0]: 595e3b447e28feb7568b456a
      - name: status
        in: query
        description: Array of offer statuses. Non-manager API keys may request only the active status
        schema:
          type: array
          items:
            type: string
            enum:
            - stopped
            - active
            - suspended
          example:
            status[0]: active
      - name: advertiser
        in: query
        description: Array of advertiser IDs. ONLY FOR ADMIN
        schema:
          type: array
          items:
            type: string
          example:
            advertiser[0]: 5b5f415035752723008b456a
      - name: external_offer_id
        in: query
        description: Search by external offer ID. ONLY FOR ADMIN
        schema:
          type: string
      - name: bundle_id
        in: query
        description: Search by bundle ID. ONLY FOR ADMIN
        schema:
          type: string
      - name: privacy
        in: query
        description: 'Array of offer privacy levels: 0 - public, 1 - protected, 2 - private. ONLY FOR ADMIN'
        schema:
          type: array
          items:
            type: integer
            enum:
            - 0
            - 1
            - 2
          example:
            privacy[0]: 0
      - name: advertiser_manager_id
        in: query
        description: Array of advertiser manager IDs. ONLY FOR ADMIN
        schema:
          type: array
          items:
            type: string
          example:
            advertiser_manager_id[0]: 5f4dfa3a2ed3070ba0464c8f
      - name: additional_fields
        in: query
        description: Additional fields to include in the response. ONLY FOR ADMIN
        schema:
          type: string
          enum:
          - enabled_affiliates
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  offers:
                    type: array
                    items:
                      $ref: '#/components/schemas/offer_affiliate'
                  pagination:
                    type: object
                    properties:
                      per_page:
                        type: integer
                      total_count:
                        type: integer
                      page:
                        type: integer
                      next_page:
                        type: integer
              example:
                status: 1
                offers:
                - id: 902
                  offer_id: 5718dac83b7d9bf8588b4579
                  bundle_id: 46cc97dc3b7d9b10758b45f0
                  title: '...'
                  preview_url: '....'
                  description_lang:
                    cn: ''
                    en: ''
                    es: ''
                    ka: ''
                    my: ''
                    pt: ''
                    ru: ''
                    vi: ''
                  cr: 199850
                  epc: 298988.33
                  logo: http://YOUR_API_DOMAIN/images/cpa/logos/2602108452.png
                  logo_source: '...'
                  sources:
                  - id: 51f531f53b7d9b1e0382f6d9
                    title: Web sites
                    allowed: 1
                  categories:
                  - '...'
                  full_categories:
                  - id: 5368afb23b7d9b4d5d505342
                    title: '...'
                  payments:
                  - countries:
                    - US
                    cities: []
                    devices: []
                    os: []
                    goal: '1'
                    revenue: 0
                    currency: usd
                    title: ''
                    type: fixed
                    country_exclude: true
                  caps:
                  - goals: {}
                    period: day
                    type: conversions
                    value: 10
                    goal_type: all
                    country_type: all
                    country: []
                  caps_status: []
                  stop_at: ''
                  required_approval: true
                  is_cpi: false
                  creatives: []
                  creatives_zip: null
                  impressions_link: null
                  landings: []
                  macro_url: null
                  links:
                  - id: null
                    title: null
                    hash: null
                    url: http://YOUR_API_DOMAIN/click?pid=610&offer_id=902
                    postbacks: []
                    created: null
                  link: http://YOUR_API_DOMAIN/click?pid=610&offer_id=902
                  use_https: false
                  use_http: true
                  hold_period: 0
                  kpi:
                    en: ''
                  click_session: 1y
                  targeting:
                  - name: default targeting
                    condition: and
                    country:
                      allow: []
                      deny: []
                    region:
                      allow: []
                      deny: []
                    city:
                      allow: []
                      deny: []
                    os:
                      allow: []
                      deny: []
                    os_deny: false
                    isp:
                      allow: []
                      deny: []
                    isp_organization:
                      allow: []
                      deny: []
                      deny_empty: false
                    ip:
                      allow: []
                      deny: []
                      ipv6_deny: false
                    browser:
                      allow: []
                      deny: []
                    browser_version:
                      allow: []
                      deny: []
                    brand:
                      allow: []
                      deny: []
                    device_type: []
                    device_type_deny: false
                    device_model:
                      allow: []
                      deny: []
                    connection: []
                    connection_deny: false
                    referrer:
                      allow: []
                      deny: []
                      deny_empty: false
                    ua:
                      allow: []
                      deny: []
                      deny_crawlers: false
                    id: 991f9eb4-0f12-4e6a-805a-1ed7aab01ef4
                    block_proxy: false
                  commission_tiers:
                  - id: e09f260e-8461-4b7d-aa30-3c164a70c1bc
                    goals: []
                    timeframe: all
                    type: conversions
                    value: 1
                    target_goals: []
                    modifier_type: by_fix
                    modifier_value: 0.0002
                    countries: []
                    conversion_status:
                    - confirmed
                    - declined
                    - pending
                    - hold
                    modifier_payment_type: payout
                  minimal_click_session: 0s
                  enabled_commission_tiers: true
                  consider_personal_targeting_only: false
                  hosts_only: false
                  uniq_ip_only: false
                  reject_not_uniq_ip: 0
                pagination:
                  per_page: 1
                  total_count: 127
                  page: 1
                  next_page: 2
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      x-codeSamples:
      - lang: cURL
        label: cURL
        source: "curl --request GET \\\n  --url 'https://api-demo.affise.com/3.0/partner/live-offers?int_id[0]=235&countries[0]=DE&categories[0]=46cc97dc3b7d9b10758b45f0&sort[id]=asc&limit=100&ids[0]=5718dac83b7d9bf8588b4579&os[0]=Android&is_top=0&smartlink_categories[0]=595e3b447e28feb7568b456a&status[0]=active&advertiser[0]=5b5f415035752723008b456a&privacy[0]=0&advertiser_manager_id[0]=5f4dfa3a2ed3070ba0464c8f&additional_fields=enabled_affiliates' \\\n  --header 'api-key: 23df424b0a53b0899f78685966243ee61'"
  /3.0/partner/activation/offer:
    post:
      tags:
      - affiliate-offers
      summary: Activation offer
      description: '`POST /3.0/partner/activation/offer`


        Connect to an offer

        '
      parameters:
      - name: api-key
        in: header
        description: API key
        required: true
        schema:
          type: string
        example: 23df424b0a53b0899f78685966243ee61
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                offer_id:
                  type: integer
                  description: Offer ID
                comment:
                  type: string
                  description: Comment
              required:
              - offer_id
              - comment
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  message:
                    type: string
              example:
                status: 1
                message: Request is successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      x-codeSamples:
      - lang: cURL
        label: cURL
        source: "curl --request POST \\\n  --url 'https://api-demo.affise.com/3.0/partner/activation/offer' \\\n  --header 'api-key: 23df424b0a53b0899f78685966243ee61' \\\n  --form 'offer_id=0' \\\n  --form 'comment=string'"
  /3.1/offers/promocodes:
    get:
      tags:
      - affiliate-offers
      summary: List of promocodes
      description: '`GET /3.1/offers/promocodes`


        List of promocodes

        '
      parameters:
      - name: api-key
        in: header
        description: API key
        example: 23df424b0a53b0899f78685966243ee61
        required: true
        schema:
          type: string
      - name: offer_id
        in: query
        description: Comma separated list of identifiers
        schema:
          type: integer
      - name: search
        in: query
        description: Search promocodes by part of string
        schema:
          type: string
      - name: code
        in: query
        description: Search promocode by exact match
        schema:
          type: string
      - name: page
        in: query
        description: Page number
        schema:
          type: integer
          default: 1
      - name: limit
        in: query
        description: Number of items per page
        schema:
          type: integer
          default: 100
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  data:
                    type: object
                    properties:
                      promocodes:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            type:
                              type: string
                            code:
                              type: string
                            code_template:
                              type: string
                            description:
                              type: string
                            offer_id:
                              type: integer
                            affiliate_id:
                              type: integer
                            usage_limit:
                              type: integer
                            usage_value:
                              type: integer
                            date_from:
                              type: string
                              format: date-time
                            date_to:
                              type: string
                              format: date-time
                            created_at:
                              type: string
                              format: date-time
                            updated_at:
                              type: string
                              format: date-time
                      total_count:
                        type: integer
                      per_page:
                        type: integer
                      page:
                        type: integer
              example:
                status: 1
                data:
                  promocodes:
                  - id: 63bbf54e8098683662ea61b5
                    type: manual
                    code: Black-1
                    code_template: ''
                    description: Some description
                    offer_id: 13
                    affiliate_id: 4
                    usage_limit: 100
                    usage_value: 0
                    date_from: '2023-01-09T00:00:00Z'
                    date_to: '2023-01-29T00:00:00Z'
                    created_at: '2023-01-09T11:06:54.189Z'
                    updated_at: '2023-01-09T11:06:54.189Z'
                  total_count: 2
                  per_page: 100
                  page: 1
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      x-codeSamples:
      - lang: cURL
        label: cURL
        source: "curl --request GET \\\n  --url 'https://api-demo.affise.com/3.1/offers/promocodes?page=1&limit=100' \\\n  --header 'api-key: 23df424b0a53b0899f78685966243ee61'"
  /3.0/offers:
    get:
      tags:
      - affiliate-offers
      summary: Offers list
      description: '`GET /3.0/offers`


        Get a list of offers

        '
      parameters:
      - name: api-key
        in: header
        description: API key
        example: 23df424b0a53b0899f78685966243ee61
        required: true
        schema:
          type: string
      - name: q
        in: query
        description: Search by title and id
        schema:
          type: string
      - name: int_id
        in: query
        description: Search by one or more offer IDs
        schema:
          type: array
          items:
            type: integer
          example:
            int_id[0]: 234
      - name: countries
        in: query
        description: Array of offers countries (ISO)
        schema:
          type: array
          items:
            type: string
          example:
            countries[0]: US
      - name: os
        in: query
        description: OS
        schema:
          type: array
          items:
            type: string
            enum:
            - Windows
            - webOS
            - macOS
            - iPadOS
            - iOS
            - Android
            example: null
            os[0]: Windows
      - name: categories
        in: query
        description: Array of offers categories
        schema:
          type: array
          items:
            type: string
          example:
            categories[0]: 5368afb23b7d9b4d5d505342
      - name: caps_type
        in: query
        description: Caps type. Values clicks, conversions, budget, impressions. This filter will not show offers for the selected cap type if the cap is full
        schema:
          type: string
          enum:
          - clicks
          - conversions
          - budget
          - impressions
      - name: caps_country
        in: query
        description: Caps country in ISO 3166-1 format
        schema:
          type: string
      - name: sort
        in: query
        description: Sort offers. Sample sort[id]=asc, sort[title]=desc. You can sort offers by one of (id, title, cr, epc, is_top, created, revenue, daily_cap, total_cap)
        schema:
          type: array
          items:
            type: string
          example:
            sort[id]: asc
      - name: page
        in: query
        description: Page of offers
        schema:
          type: integer
      - name: limit
        in: query
        description: Count offers by page
        schema:
          type: integer
          maximum: 500
          default: 100
      - name: status
        in: query
        description: Statuses stopped and suspended ONLY FOR ADMIN. Status active allowed for NON ADMIN
        schema:
          type: array
          items:
            type: string
            enum:
            - active
            - stopped
            - suspended
          example:
            status[0]: active
          default:
          - active
      - name: advertiser
        in: query
        description: ONLY FOR ADMIN - Advertiser ID
        schema:
          type: array
          items:
            type: string
          example:
            advertiser[0]: 55b204663b7d9b460b8b45b2
      - name: privacy
        in: query
        description: ONLY FOR ADMIN - Privacy filter Public(0), Premoderated(1), Private(2)
        schema:
          type: array
          items:
            type: integer
            enum:
            - 0
            - 1
            - 2
      - name: updated_at
        in: query
        description: Get offers that have been updated from this date (format YYYY-MM-DD)
        schema:
          type: string
          format: date
      - name: is_top
        in: query
        description: Get TOP-offers
        schema:
          type: integer
          enum:
          - 0
          - 1
      - name: bundle_id
        in: query
        description: ONLY FOR ADMIN - Search by bundle id
        schema:
          type: string
      - name: smartlink_categories
        in: query
        description: Array of smartlinks IDs
        schema:
          type: array
          items:
            type: string
          example:
            smartlink_categories[0]: 55b204

# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/affise/refs/heads/main/openapi/affise-affiliate-offers-api-openapi.yml