---
title: "List product partners"
method: GET
path: "/v3/products/{product_id}/partners"
tags: ["Business Products"]
---

# List product partners

`GET /v3/products/{product_id}/partners`

## Request

- Base URL: `https://api.scalev.com`
- URL: `https://api.scalev.com/v3/products/{product_id}/partners`
- Auth: one of:
  - HTTP bearer
  - API key in header `authorization`

Requires the `product:list` scope. Retrieves a paginated list of product partners.

## Query parameters

- `next_cursor` string
- `previous_cursor` string
- `page_size` integer

## Response `200`

Paginated list of product partners

- ListProductPartnersResponseBody: Paginated list payload for v3.
  - `data` ProductPartner[], required
    - `affiliate_pro_domains` object[]: Approved affiliate_pro custom domains for this partnership
      - `business_id` integer: Business ID that owns the custom domain
      - `full_url` string: Full URL of the custom domain
      - `id` integer: Unique identifier of the custom domain
    - `affiliate_pro_links` object[]: Affiliate Pro links for partners (product + checkout, includes ap=<store_short_unique_id>)
      - `checkout_url` string: Affiliate Pro checkout page URL
      - `domain` string: Custom domain for the affiliate pro link
      - `product_url` string: Affiliate Pro product page URL
    - `affiliate_status` string: Status of the partnership (pending, approved, rejected, banned)
    - `approved_at` string, date-time, nullable: Timestamp when partnership was approved
    - `created_at` string, date-time: Timestamp when the product partner was created
    - `custom_domains` object[]: List of custom domains where the product page can be viewed
      - `business_id` integer: Business ID that owns the custom domain
      - `full_url` string: Full URL of the custom domain
      - `id` integer: Unique identifier of the custom domain
    - `id` integer: Unique identifier of the product partner
    - `message_to_product_owner` string, nullable: Message from partner when requesting partnership
    - `partner` object
      - `account_holder` string: Name of the account holder
      - `email` string, email: Email address of the business
      - `id` integer: Business ID
      - `is_banned` boolean: Is the business banned?
      - `logo` string, uri: URL to the business logo
      - `unique_id` string: Unique identifier for the business
      - `username` string: Username of the business
    - `partnership_type` string: Type of partnership (affiliate, affiliate_pro, or reseller)
    - `rejected_at` string, date-time, nullable: Timestamp when partnership was rejected
    - `requested_at` string, date-time, nullable: Timestamp when partnership was requested
    - `store_id` integer, nullable: Store ID assigned for affiliate_pro routing
  - `is_paginated` true, required
  - `has_next` boolean
  - `has_previous` boolean
  - `next_cursor` string, nullable
  - `previous_cursor` string, nullable
  - `page_size` integer

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found

---

[API](https://skmtc.dev/scalev/apis/nexus-commerce-api.md) - [All operations](https://skmtc.dev/scalev/apis/nexus-commerce-api/llms.txt) - [OpenAPI document](https://skmtc.dev/scalev/apis/nexus-commerce-api/revisions/6b9152f04622?raw)
