# 1688 Supplier & Product Analyzer (`scrupulous_buckler/1688-supplier-sourcing-intelligence`) Actor

Analyze data from any 1688 scraper or product export. Score supplier evidence, compare MOQ cash exposure, model cross-border margins, detect repeated-snapshot trends, and rank sourcing candidates.

- **URL**: https://apify.com/scrupulous\_buckler/1688-supplier-sourcing-intelligence.md
- **Developed by:** [Peng Lyu](https://apify.com/scrupulous_buckler) (community)
- **Categories:** E-commerce, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.99 / full 1688 supplier & sourcing report

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 1688 Supplier & Product Analyzer

Analyze data from any 1688 scraper, product export, or private Apify Dataset.
Turn raw 1688 product and supplier records into evidence-linked supplier
diligence, MOQ cash exposure, fulfillment proxies, supply-trend evidence,
cross-border unit economics, and a ranked sourcing shortlist.

**Unofficial tool. This Actor is not affiliated with, sponsored by, or endorsed
by Alibaba, 1688, or any source or destination marketplace.**

### Quick start

- No data yet: select `demo` to see a synthetic report without a paid report
  event.
- Have a scraper Dataset: paste its ID into `sourceDatasetIds`.
- Have JSON or spreadsheet exports: paste normalized records into
  `uploadedRecords`.

No 1688 account, password, session, or Cookie is requested by this analyzer.

### Ready-made public examples

- [Audit a 1688 Supplier Before Ordering](https://apify.com/scrupulous_buckler/1688-supplier-sourcing-intelligence/examples/audit-a-1688-supplier-before-ordering)
  compares supplier evidence, fulfillment proxies, red flags, and verification
  actions.
- [Calculate Amazon FBA Margin from 1688 Products](https://apify.com/scrupulous_buckler/1688-supplier-sourcing-intelligence/examples/calculate-amazon-fba-margin-from-1688-products)
  models MOQ cash exposure, landed cost, fees, advertising, returns, and
  baseline margin.
- [Rank 1688 Products for Sourcing](https://apify.com/scrupulous_buckler/1688-supplier-sourcing-intelligence/examples/rank-1688-products-for-sourcing)
  ranks products using demand proxies, supplier evidence, MOQ fit, modeled
  margins, and repeated-snapshot trend evidence.

All three examples use synthetic records. Duplicate an example and replace the
sample input with data you are authorized to use.

### Why this is different

Most 1688 scraper Actors sell collection. This 1688 supplier analyzer sells the
decision layer after collection:

- compare suppliers without presenting a platform badge as proof of legitimacy;
- expose missing identity, repeat-order, delivery, certification, and factory
  evidence;
- apply MOQ and quantity pricing instead of assuming the lowest displayed price;
- model first-order cash exposure and landed margin under conservative,
  baseline, and optimistic assumptions;
- require repeated dated snapshots before calling a product a trend; and
- rank product candidates with source evidence and concrete next actions.

It does not claim that 1688 is freely scrapeable and it does not request or
publish a 1688 Cookie.

### 1688 scraper data in, sourcing decisions out

Use the output of an existing 1688 product scraper instead of rebuilding your
collection workflow. The analyzer recognizes common product, price-tier, MOQ,
supplier, order, review, logistics, stock, certification, and snapshot fields.
It then produces a comparable report rather than another raw product list.

### Private-data-safe delivery

Choose either:

1. paste authorized JSON into `uploadedRecords`; or
2. provide `sourceDatasetIds` from collection tasks in your own Apify account.

Only explicitly supplied datasets are read. A customer who already uses a 1688
scraper can pass its Dataset ID directly into this Actor. Private collection,
field mapping, scheduled maintenance, and an SLA can be scoped separately
without putting credentials in this public Actor.

### Reports and pricing

| Report | Output | Price |
| --- | --- | ---: |
| Supplier diligence | Confidence score, red flags, fulfillment proxies, evidence, verification checklist | $1.99 |
| MOQ & landed cost | MOQ-adjusted quantity tier, inventory cash, three cost/margin scenarios | $1.99 |
| Product selection | Ranked shortlist, demand proxies, trend evidence, supplier and margin fit | $2.49 |
| Full sourcing intelligence | Every module in one report | $4.99 |

The synthetic `demo` does not trigger a paid report event. Platform usage is
included in paid report prices.

### Modes

- `demo`: run a safe synthetic example without uploading data
- `supplierDiligence`: supplier evidence, red flags, fulfillment proxies, and
  verification actions
- `landedCost`: MOQ cash exposure and three-scenario unit economics
- `productSelection`: sourcing shortlist and supply-side trend evidence
- `fullReport`: all modules

### Example using an upstream private Dataset

```json
{
  "mode": "fullReport",
  "sourceDatasetIds": ["YOUR_PRIVATE_1688_DATASET_ID"],
  "targetMarketplace": "amazonFba",
  "destinationCountry": "United States",
  "destinationCurrency": "USD",
  "exchangeRateCnyToTarget": 0.14,
  "purchaseQuantity": 200,
  "targetSalePrice": 29.99,
  "targetMarginRate": 30,
  "inventoryBudget": 5000,
  "internationalFreightPerKg": 4,
  "dutyRate": 5,
  "taxRate": 0,
  "platformFeeRate": 15,
  "paymentFeeRate": 3,
  "adCostRate": 12,
  "returnRate": 5,
  "returnLossPerReturnedUnit": 8,
  "fulfillmentFeePerUnit": 4
}
````

### Accepted records

The normalizer recognizes common flat and nested aliases for:

- product identity: `offerId`, `productId`, `url`, `title`
- pricing: `price`, `priceCny`, `quantityPrices`, `priceTiers`
- order requirements: `moq`, `minOrder`, `minimumOrderQuantity`
- supplier identity: `supplierName`, `companyName`, `supplierId`, location,
  business type, platform years, badges, and verification tags
- operating evidence: logistics/service scores, lead time, on-time rate, stock,
  service protections, return policy, factory area, and staff count
- transaction proxies: monthly sales, orders, sold count, reviews, positive rate,
  and repurchase rate
- time series: `observedAt`, `scrapedAt`, `collectedAt`, or `timestamp`
- product weight in kg, g, or lb

Fields can be flat or nested under common `product`, `pricing`, `metrics`,
`supplier`, `seller`, `shop`, `company`, or `factory` objects.

### What the scores mean

The supplier score is a transparent relative evidence score. It combines
identity, transaction, operating, buyer-protection, and data-completeness
signals from the supplied records. It is not legal identity verification, a
factory audit, a credit check, or a performance guarantee.

The product shortlist combines:

- supply-side demand proxies;
- supplier evidence;
- configured unit economics;
- MOQ and inventory-budget fit;
- data completeness; and
- time-series evidence.

A single listing snapshot is never labeled as trend proof. At least two dated
snapshots of the same offer are required.

### Financial and sourcing boundaries

The output is a screening model, not tax, customs, legal, compliance, investment,
or procurement advice. Before ordering:

- verify the legal contracting entity and bank details independently;
- order and inspect representative samples;
- obtain a written quote, specification, production capacity, lead-time, quality
  control, packaging, remedy, and payment terms;
- verify certificates with the issuer and confirm the exact covered model;
- confirm destination-market safety, labeling, intellectual-property, customs
  classification, duty, tax, and marketplace requirements; and
- replace estimated weight, freight, advertising, returns, fees, and exchange
  rates with current quotes and measured data.

Only process data you are authorized to use and follow platform terms,
privacy, intellectual-property, trade, and data-protection rules.

### Local validation

```bash
python3 -m unittest discover -s tests -v
```

# Actor input Schema

## `mode` (type: `string`):

Try the free synthetic demo or generate one focused or complete sourcing report.

## `uploadedRecords` (type: `array`):

Paste JSON records exported by a 1688 scraper or spreadsheet workflow. Common offer, pricing-tier, MOQ, supplier, sales, review, logistics, stock, and certification aliases are recognized.

## `sourceDatasetIds` (type: `array`):

Optional private datasets from upstream 1688 collection tasks. Only IDs explicitly supplied here are read; up to 10 datasets.

## `targetMarketplace` (type: `string`):

Report context for marketplace fees and the final verification checklist.

## `destinationCountry` (type: `string`):

Used as report context only. Duty, tax, product compliance, and customs treatment must be supplied or independently verified.

## `destinationCurrency` (type: `string`):

For example USD, NZD, AUD, EUR, or GBP.

## `exchangeRateCnyToTarget` (type: `number`):

Example: enter 0.14 when 1 CNY equals 0.14 USD. Update this assumption before financial decisions.

## `purchaseQuantity` (type: `integer`):

The analyzer applies the product's MOQ and the best eligible quantity price tier.

## `targetSalePrice` (type: `number`):

In destinationCurrency.

## `targetMarginRate` (type: `number`):

Used to flag candidates whose baseline modeled margin is below your target.

## `inventoryBudget` (type: `number`):

In destinationCurrency. Set 0 to disable the budget-fit check.

## `defaultWeightKg` (type: `number`):

Used only when a product record does not include a usable weight.

## `domesticShippingPerUnitCny` (type: `number`):

Estimated domestic transport allocation per unit before international freight.

## `packagingPerUnitCny` (type: `number`):

Estimated packaging, labeling, or customization allocation per unit.

## `qualityControlPerUnitCny` (type: `number`):

Estimated inspection and quality-control allocation per unit.

## `internationalFreightPerKg` (type: `number`):

In destinationCurrency.

## `dutyRate` (type: `number`):

Use 0 only when duty does not apply or has not yet been estimated.

## `taxRate` (type: `number`):

A simplified landed-cost assumption, not tax advice.

## `platformFeeRate` (type: `number`):

Percentage of sale price paid to the destination marketplace or selling platform.

## `paymentFeeRate` (type: `number`):

Percentage of sale price allocated to payment processing.

## `adCostRate` (type: `number`):

Expected advertising spend divided by sales revenue.

## `returnRate` (type: `number`):

Expected share of sold units that create the configured return loss.

## `returnLossPerReturnedUnit` (type: `number`):

In destinationCurrency. Include reverse logistics, disposal, lost fees, or markdown loss.

## `fulfillmentFeePerUnit` (type: `number`):

In destinationCurrency.

## `otherCostPerUnit` (type: `number`):

In destinationCurrency. Add labeling, inspection allocation, software, warehousing, or other known costs.

## `maxCandidates` (type: `integer`):

Limits the number of ranked product candidates in the report.

## `maxEvidence` (type: `integer`):

Limits the source evidence records attached to each supplier result.

## `maxRecords` (type: `integer`):

Hard processing limit across uploads and private datasets.

## Actor input object example

```json
{
  "mode": "demo",
  "uploadedRecords": [],
  "sourceDatasetIds": [],
  "targetMarketplace": "amazonFba",
  "destinationCountry": "United States",
  "destinationCurrency": "USD",
  "exchangeRateCnyToTarget": 0.14,
  "purchaseQuantity": 100,
  "targetSalePrice": 29.99,
  "targetMarginRate": 30,
  "inventoryBudget": 5000,
  "defaultWeightKg": 0.5,
  "domesticShippingPerUnitCny": 1,
  "packagingPerUnitCny": 1,
  "qualityControlPerUnitCny": 0.5,
  "internationalFreightPerKg": 4,
  "dutyRate": 0,
  "taxRate": 0,
  "platformFeeRate": 15,
  "paymentFeeRate": 3,
  "adCostRate": 12,
  "returnRate": 5,
  "returnLossPerReturnedUnit": 8,
  "fulfillmentFeePerUnit": 4,
  "otherCostPerUnit": 0,
  "maxCandidates": 20,
  "maxEvidence": 10,
  "maxRecords": 5000
}
```

# Actor output Schema

## `reports` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("scrupulous_buckler/1688-supplier-sourcing-intelligence").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("scrupulous_buckler/1688-supplier-sourcing-intelligence").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call scrupulous_buckler/1688-supplier-sourcing-intelligence --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrupulous_buckler/1688-supplier-sourcing-intelligence",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "1688 Supplier & Product Analyzer",
        "description": "Analyze data from any 1688 scraper or product export. Score supplier evidence, compare MOQ cash exposure, model cross-border margins, detect repeated-snapshot trends, and rank sourcing candidates.",
        "version": "0.1",
        "x-build-id": "kVuhaiWZADZiUU3PJ"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrupulous_buckler~1688-supplier-sourcing-intelligence/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrupulous_buckler-1688-supplier-sourcing-intelligence",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/scrupulous_buckler~1688-supplier-sourcing-intelligence/runs": {
            "post": {
                "operationId": "runs-sync-scrupulous_buckler-1688-supplier-sourcing-intelligence",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/scrupulous_buckler~1688-supplier-sourcing-intelligence/run-sync": {
            "post": {
                "operationId": "run-sync-scrupulous_buckler-1688-supplier-sourcing-intelligence",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "mode": {
                        "title": "Report mode",
                        "enum": [
                            "demo",
                            "supplierDiligence",
                            "landedCost",
                            "productSelection",
                            "fullReport"
                        ],
                        "type": "string",
                        "description": "Try the free synthetic demo or generate one focused or complete sourcing report.",
                        "default": "demo"
                    },
                    "uploadedRecords": {
                        "title": "1688 product or supplier records",
                        "type": "array",
                        "description": "Paste JSON records exported by a 1688 scraper or spreadsheet workflow. Common offer, pricing-tier, MOQ, supplier, sales, review, logistics, stock, and certification aliases are recognized.",
                        "default": []
                    },
                    "sourceDatasetIds": {
                        "title": "Private Apify dataset IDs",
                        "type": "array",
                        "description": "Optional private datasets from upstream 1688 collection tasks. Only IDs explicitly supplied here are read; up to 10 datasets.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "targetMarketplace": {
                        "title": "Target sales channel",
                        "enum": [
                            "amazonFba",
                            "tiktokShop",
                            "shopify",
                            "ebay",
                            "temu",
                            "other"
                        ],
                        "type": "string",
                        "description": "Report context for marketplace fees and the final verification checklist.",
                        "default": "amazonFba"
                    },
                    "destinationCountry": {
                        "title": "Destination country or market",
                        "type": "string",
                        "description": "Used as report context only. Duty, tax, product compliance, and customs treatment must be supplied or independently verified.",
                        "default": "United States"
                    },
                    "destinationCurrency": {
                        "title": "Destination currency",
                        "type": "string",
                        "description": "For example USD, NZD, AUD, EUR, or GBP.",
                        "default": "USD"
                    },
                    "exchangeRateCnyToTarget": {
                        "title": "1 CNY in destination currency",
                        "minimum": 0.000001,
                        "maximum": 100,
                        "type": "number",
                        "description": "Example: enter 0.14 when 1 CNY equals 0.14 USD. Update this assumption before financial decisions.",
                        "default": 0.14
                    },
                    "purchaseQuantity": {
                        "title": "Planned order quantity per product",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "The analyzer applies the product's MOQ and the best eligible quantity price tier.",
                        "default": 100
                    },
                    "targetSalePrice": {
                        "title": "Expected sale price per unit",
                        "minimum": 0.01,
                        "maximum": 1000000,
                        "type": "number",
                        "description": "In destinationCurrency.",
                        "default": 29.99
                    },
                    "targetMarginRate": {
                        "title": "Target profit margin (%)",
                        "minimum": -100,
                        "maximum": 99,
                        "type": "number",
                        "description": "Used to flag candidates whose baseline modeled margin is below your target.",
                        "default": 30
                    },
                    "inventoryBudget": {
                        "title": "Maximum first-order inventory budget",
                        "minimum": 0,
                        "maximum": 1000000000,
                        "type": "number",
                        "description": "In destinationCurrency. Set 0 to disable the budget-fit check.",
                        "default": 5000
                    },
                    "defaultWeightKg": {
                        "title": "Default chargeable weight per unit (kg)",
                        "minimum": 0,
                        "maximum": 10000,
                        "type": "number",
                        "description": "Used only when a product record does not include a usable weight.",
                        "default": 0.5
                    },
                    "domesticShippingPerUnitCny": {
                        "title": "China domestic shipping per unit (CNY)",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "Estimated domestic transport allocation per unit before international freight.",
                        "default": 1
                    },
                    "packagingPerUnitCny": {
                        "title": "Packaging/customization per unit (CNY)",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "Estimated packaging, labeling, or customization allocation per unit.",
                        "default": 1
                    },
                    "qualityControlPerUnitCny": {
                        "title": "Quality control per unit (CNY)",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "Estimated inspection and quality-control allocation per unit.",
                        "default": 0.5
                    },
                    "internationalFreightPerKg": {
                        "title": "International freight per kg",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "In destinationCurrency.",
                        "default": 4
                    },
                    "dutyRate": {
                        "title": "Duty rate (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "Use 0 only when duty does not apply or has not yet been estimated.",
                        "default": 0
                    },
                    "taxRate": {
                        "title": "Import tax or VAT rate (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "A simplified landed-cost assumption, not tax advice.",
                        "default": 0
                    },
                    "platformFeeRate": {
                        "title": "Marketplace/platform fee (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "Percentage of sale price paid to the destination marketplace or selling platform.",
                        "default": 15
                    },
                    "paymentFeeRate": {
                        "title": "Payment processing fee (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "Percentage of sale price allocated to payment processing.",
                        "default": 3
                    },
                    "adCostRate": {
                        "title": "Advertising cost as share of sales (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "Expected advertising spend divided by sales revenue.",
                        "default": 12
                    },
                    "returnRate": {
                        "title": "Expected return rate (%)",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "number",
                        "description": "Expected share of sold units that create the configured return loss.",
                        "default": 5
                    },
                    "returnLossPerReturnedUnit": {
                        "title": "Expected loss per returned unit",
                        "minimum": 0,
                        "maximum": 1000000,
                        "type": "number",
                        "description": "In destinationCurrency. Include reverse logistics, disposal, lost fees, or markdown loss.",
                        "default": 8
                    },
                    "fulfillmentFeePerUnit": {
                        "title": "Fulfillment fee per unit",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "In destinationCurrency.",
                        "default": 4
                    },
                    "otherCostPerUnit": {
                        "title": "Other cost per unit",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "number",
                        "description": "In destinationCurrency. Add labeling, inspection allocation, software, warehousing, or other known costs.",
                        "default": 0
                    },
                    "maxCandidates": {
                        "title": "Maximum shortlisted products",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Limits the number of ranked product candidates in the report.",
                        "default": 20
                    },
                    "maxEvidence": {
                        "title": "Maximum source records per supplier",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Limits the source evidence records attached to each supplier result.",
                        "default": 10
                    },
                    "maxRecords": {
                        "title": "Maximum input records",
                        "minimum": 1,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "Hard processing limit across uploads and private datasets.",
                        "default": 5000
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
