On November 8, 2026, from 00:15 to 00:46 Singapore time, we ran a full sourcing check with three EveryInfra data capabilities. First, we took the top product in 5 categories from Yandex Market in Moscow. Next, we sent each product photo to a 1688 image search. Then we read the 1688 product detail for the SKU price, the minimum order quantity (MOQ) and the weight. Last, we calculated the margin with public Yandex Market fees and the Bank of Russia rate for November 7, 2026.
The result has two sides. The 5 image searches returned 25 candidates, and we checked each photo by eye. 15 were the same product, 6 were similar, and 4 were wrong. Only 2 of the 5 first-ranked results were the same product. The best complete row was a car travel mug at 3,500 rubles (about $42.61) on Yandex Market. The same mug costs 8.17 yuan (about $1.22) on 1688.
After a 50% category fee and the delivery fees, about 1,266 rubles (about $15.41) stays with the seller. That is a 36.2% margin. But 5 sellers list the same mug on Yandex Market, and the lowest price is 1,227 rubles. At that price, the margin is only 19.8%. The data fee for the full check was $0.008334 per product.
Key points
- Retail prices come only from Yandex Market. EveryInfra does not supply storefront data from Ozon or Wildberries, and a Yandex Market price is not an Ozon or Wildberries price.
- 5 runs of
alibaba1688/image_searchreturned 25 candidates: 15 same, 6 similar, 4 wrong. Rank 1 was the same product only 2 times, so the agent must check the photos.- Travel mug: 3,500 rubles on Yandex Market, 8.17 yuan (about 100 rubles) on 1688, and a 1,266-ruble margin (36.2%) after a 50% category fee. At the lowest price of the same mug, 1,227 rubles, the margin is 19.8%.
- The Yandex Market category fees for these 5 categories are 44.5% to 50%. The platform fee is more than 10 times the purchase price.
- 3 data calls per product cost $0.008334. 100 products cost about $0.83. One 6-photo contact sheet costs about 715 vision tokens in Claude.
This article is for sellers in Russia who buy stock in China, and for the developers who build tools for them. It shows how to build a sourcing agent in Claude Code. You give it one product that sells. The agent returns one row with the 1688 price, the MOQ and the freight. The row also shows the money that stays after the Yandex Market fees.
What image search really returns: some candidates are the same product, some only look alike, and some are not related.
The question the agent answers: should you stock this product?
Sellers in Russian-speaking markets often use one method. They start with the marketplace, not with the factory. They find a product that sells in Russia and note its price, rating count and sales. Then they look for the same product on 1688. Last, they calculate the unit economics, which Russian sellers call "юнит-экономика".
Unit economics includes the purchase price, freight, customs and tax, the platform fee, last-mile delivery and returns. Open-source developers already build tools for this work. One GitHub project is a profit calculator for Wildberries sellers that reports unit economics, margin and ROI (wb-calculator). Another project is a Wildberries plugin for Codex and Claude (wildberries-agent-integration). It turns unit economics, break-even and restock planning into tools.
These tools work with data from the seller's own store. They assume that you already have stock and a seller account. Our agent works one step earlier. It uses public data to decide whether a product is worth a first order. That is a different job, and it needs different data.
So the agent takes one Russian keyword, for example "термокружка" (travel mug). It returns one table row with three groups of data. The first group is the Yandex Market title, price and rating count. The second group is the 1688 link, SKU price, MOQ, unit weight and box size of the same product. The third group is the platform fee, the delivery fees, the freight and the margin.
One step in the middle needs a model. The agent must decide whether each image-search candidate is the same product. This step causes the most errors, and a multimodal model is a good fit for it. The live results below show why.
We chose 5 categories that rank high in the Moscow popularity sort on Yandex Market. They are a car travel mug, a rotating cosmetics organizer, a magnetic car phone holder, an astronaut star projector and a city backpack. The mug and the organizer are standard goods with many factories. The phone holder is light and cheap. The star projector has electronics and many design variants. The backpack has many look-alikes with very different specifications.
1688 API and Yandex Market: what each capability does
The fields set the limit of what the agent can calculate, so we start with them. All prices, parameters and fields below come from the free EveryInfra catalog (data catalog). We read it at 00:13 Singapore time on November 8, 2026. You can also read only the 1688 part or the Yandex part. On that day, all four capabilities had available: true.
Each capability page has the full parameter list and examples. Start with the 1688 data API, 1688 image search and 1688 product detail. The other pages are 1688 keyword search, the Yandex data API and Yandex Market product search. For a first key, read the quickstart.
| Capability | Required parameter | Price per call | One call returns | Fields used in this article |
|---|---|---|---|---|
yandex/market |
keyword | $0.001389 | 20 items by default, up to 100 | title, price, currency, rating, rating_count, review_count, purchase_count, shop_name, category, image_url |
alibaba1688/image_search |
image_url | $0.005556 | up to 5 items | rank, title, price, min_order_quantity, order_count, id, image_url |
alibaba1688/product_detail |
url (product link or offerId) | $0.001389 | 1 product | price_min, price_max, price_tiers, min_order_quantity, skus (with weight_g, length_cm and more), specs, supplier_type |
alibaba1688/search |
keyword | $0.002778 | 20 items by default, up to 100 | price_min, min_order_quantity, order_count |
yandex/market has two optional parameters that matter here. city accepts 16 cities, for example Moscow, Saint Petersburg and Kazan. sort accepts only popular and top_rated. The catalog also says that yandex/market and yandex/search use different data. search finds businesses on the map, and market finds products in the store. This note is important, because a model that sees "Yandex" and "price" can easily pick the wrong action.
alibaba1688/image_search costs 4 times as much as the other two calls. Each call searches one photo and returns up to 5 candidates. It does not return full SKU, stock or supplier data, and the catalog says this directly. So image search is a filter. Use it to find candidates. Then call alibaba1688/product_detail for the one candidate that you choose.
The product_detail entry also has a note that is easy to miss. In sync mode, weight, size, stock, province and some other fields can be empty. To get them, use async mode. Our test confirmed this note. It also showed that async mode does not fill every field.
1688 API integration: connect the remote MCP server in Claude Code
The simplest way to give Claude Code external data is a remote MCP server. The Claude Code documentation recommends HTTP for remote MCP servers. The command is claude mcp add --transport http <name> <url>. If the server needs an API key, add it with --header. In .mcp.json, set type to http, because an entry with only url is read as a local stdio server (Claude Code MCP docs). The MCP specification calls this transport Streamable HTTP (MCP transports, 2025-06-18).
A note on method: all Claude Code facts in this article come from the official documentation and the changelog. We did not run the full agent inside Claude Code, so the Claude Code parts are labeled "configuration example". Every data number comes from a live API response and from a script that you can run again on the same files.
# Configuration example: add the EveryInfra remote MCP server to this project (.mcp.json)
export EVERYINFRA_API_KEY=... # key from the console, keep it in an environment variable only
claude mcp add --transport http everyinfra https://api.everyinfra.com/mcp \
--scope project --header "Authorization: Bearer ${EVERYINFRA_API_KEY}"
After you connect, tools/list shows 12 tools. We read the list once at 00:37 Singapore time, and this read has no charge. The sourcing agent needs only two tools. everyinfra_call_api calls any data capability with platform, action and params. It also has a mode field that accepts sync or async. everyinfra_get_job reads the result of an async job.
The everyinfra_call_api tool has the annotations readOnlyHint: false and destructiveHint: true, because each call costs money. The MCP specification says that these annotations are hints for the client (MCP tools specification). Claude Code uses them to ask you for permission. For batch runs, allow only these two tools in the project settings (permissions docs, settings docs). Do not allow all MCP tools.
You can also skip MCP and call the REST endpoint POST /api/v1/social with Bash. The charge is the same. With REST, put the request format into a Skill or a prompt (remote MCP setup guide). An earlier article compares the two methods (Claude Code subagents pull TikTok brand accounts).
Step 1: find products that sell on Yandex Market
Step 1 calls yandex/market with a Russian keyword, city: moscow, sort: popular and limit: 10. We ran 5 keywords at 00:15, 00:18 and 00:26 Singapore time. Each call cost $0.001389. Below is the real request for the mug and the main fields of the first item. We removed internal fields such as the balance.
curl -s https://api.everyinfra.com/api/v1/social \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" -H "Content-Type: application/json" \
-d '{"platform":"yandex","action":"market",
"params":{"keyword":"термокружка","limit":10,"city":"moscow","sort":"popular"}}'
# Response (excerpt, 2026-11-08 00:15:05 Singapore time)
# "count": 10, "charged_usd": 0.001389
# {"id":"5953869335","title":"Термокружка (термос) для кофе и чая автомобильная 510 мл кружка-термос",
# "price":3500,"currency":"RUR","rating":4.6,"rating_count":349,"review_count":140,
# "shop_name":"BASQA","category":"Термокружки дорожные","is_available":true,
# "image_url":"https://avatars.mds.yandex.net/get-mpic/18061612/.../orig"}
The 10 mug items cost from 440 to 4,900 rubles. The top item is a 510 ml car travel mug at 3,500 rubles with 349 ratings. The table shows the product that we chose in each category. For the phone holder and the backpack, we skipped higher items that were brand goods or bundles. Such items are not good for a same-product price check.
| Category | Keyword (Russian) | Chosen item | Position | Price (RUB) | Ratings | Purchases |
|---|---|---|---|---|---|---|
| Car travel mug, 510 ml | термокружка | BASQA | 1 | 3,500 | 349 | null |
| Rotating cosmetics organizer | органайзер для косметики вращающийся | ZALUU HOME | 1 | 3,990 | 419 | null |
| Magnetic car phone holder | держатель для телефона в машину магнитный | TONG (brand) | 7 | 1,200 | 5,372 | null |
| Astronaut star projector | ночник проектор звездное небо | Lo&Ger | 1 | 2,500 | 106 | 609 |
| City backpack | рюкзак для ноутбука мужской | Mozione | 6 | 5,900 | 105 | 558 |
One finding helps with agent design. The purchase_count field had a value for only 2 of the 5 products, the projector and the backpack. All 5 had rating_count. So, to rank products by demand, use the rating count as the main signal. Use the purchase count only when it has a value. The image_url field points to the full-size photo, so you can send it directly to the next step.
Step 2: image search for the same product, and how many of the top 5 match
Step 2 sends the Yandex Market photo URL to alibaba1688/image_search. The mug search returned at 00:16 Singapore time. All 5 candidates were 304 stainless steel car coffee mugs at 7.88 to 11.66 yuan. The organizer search returned at 00:19. All 5 candidates were the same rotating brush organizer at 3.76 to 6 yuan. These two results were very clean, but the other three were not.
For the phone holder, the sync call returned HTTP 503 with the error code timeout at 00:21:25 Singapore time, after a wait of 85 seconds. The response had billing.charged: false and the text "Not charged". It also suggested a retry with "mode":"async". At 00:23:04 we sent the request in async mode and got a job_id at once. At 00:24 the poll returned the result.
| Product | Sync call | Sync result | Async submit | Async result | Charged |
|---|---|---|---|---|---|
| Car travel mug | 00:16 | 5 candidates | not needed | — | $0.005556 |
| Cosmetics organizer | 00:19 | 5 candidates | not needed | — | $0.005556 |
| Magnetic phone holder | 00:21:25 | 503 timeout at 85 s | 00:23:04 | 00:24 | $0.005556 (sync: $0) |
| Star projector | 00:27:35 | 503 timeout at 85 s | 00:30:16 | 00:32 | $0.005556 (sync: $0) |
| City backpack | 00:29 | 5 candidates | not needed | — | $0.005556 |
All times in this table are Singapore time on November 8, 2026. So 2 of 7 image searches timed out in sync mode, and neither had a charge. Each of the two async retries cost $0.005556. For the agent, this means one rule. Use async mode for image search by default.
Image search for the phone holder: rank 1 is a clip fan, and the same product is rank 3. Captured on November 8, 2026, 00:24 Singapore time. EveryInfra API response screenshot, 2026-11-08 00:24 SGT
The real work starts after the results arrive. For the phone holder, rank 1 was a cartoon clip fan at 35 yuan with an MOQ of 5. Ranks 2 and 4 were magnetic holders with a different vent clip and magnet head. Rank 3 was the same product at 17 yuan with an MOQ of 2. Rank 5 was a separate magnetic ball-head part.
For the projector, rank 1 was an injection-mold shop that offers "robot shell mold making". It has no relation to a projector. Ranks 2 to 5 were all astronaut star projectors. Rank 5 had the same shape as the Yandex Market product: an astronaut that holds a star. Ranks 3 and 4 have "rocket" in the title. But their main photos show the label "white, holds a star" and the same shape, so we labeled them the same.
The backpack was the hardest case. All 5 candidates were backpacks, and none was clearly the same product. The rank 4 photo shows a group of light blue, yellow and pink school bags with side pockets and charms. Only one bag in the group is black. We labeled it wrong.
We wanted one standard for every decision. So we resized the source photo and the 5 candidates to 300×300 pixels. Then we joined them into one 1800×300 contact sheet. "Same" means the same body, shape and parts. "Similar" means the same type of product with a different design or no clear match. "Wrong" means a different type of product.
| Product | Image-search rank 1 | Same in top 5 | Similar | Wrong | 1688 product chosen |
|---|---|---|---|---|---|
| Car travel mug, 510 ml | Same | 5 | 0 | 0 | Rank 4, about 25,000 sold |
| Rotating cosmetics organizer | Same | 5 | 0 | 0 | Rank 1, 3.76 yuan |
| Magnetic car phone holder | Wrong (clip fan) | 1 | 2 | 2 | Rank 3, 17 yuan, MOQ 2 |
| Astronaut star projector | Wrong (mold shop) | 4 | 0 | 1 | Rank 5, star-holding model, 16.21 yuan |
| City backpack | Similar | 0 | 4 | 1 | Rank 3 as a reference only, not the same |
| Total | Same 2 times | 15 | 6 | 4 | Same product found for 4 categories |
The table shows two facts. First, recall is good. For 4 of 5 categories, the top 5 include the same product, and 60% of all candidates are the same product. Second, the ranking is not reliable. Rank 1 was the same product only 2 times (40%).
An agent that takes rank 1 would calculate 3 of 5 rows wrong. Two of those rows would be very wrong. One would use the price of a 35-yuan fan for a phone holder. The other would use the price of a mold service for a projector. So the photo check is not optional, because it decides whether the numbers are usable.
Step 3: let Claude read the photos, and the token cost
Claude can read images. The Anthropic vision documentation counts images in blocks of 28×28 pixels (vision docs). The token count is the width divided by 28, rounded up, times the height divided by 28, rounded up. Our 1800×300 contact sheet gives 65 × 11 = 715 vision tokens.
Six separate 1000×1000 photos give 6 × 36 × 36 = 7,776 tokens. That is about 11 times the contact sheet. For a sourcing check, a 300×300 thumbnail shows the mug shape, the lid design and the base. A large image adds cost and no new information.
We used the base input prices on the Anthropic pricing page, read at 02:13 Singapore time on November 8, 2026. Haiku 5.5 costs $0.10 per million input tokens when the full prompt is 100,000 tokens or less, and $0.50 above that. So one contact sheet costs about $0.0000715 of input with Haiku 5.5. It costs about $0.00143 with Sonnet 5.5 ($2 per million) and about $0.00286 with Opus 5.5 ($4 per million). The output is 5 labels and one or two sentences, so you can ignore it.
So, even with Opus, the photo check costs about one third of the data fee per product. With Haiku, it costs almost nothing. We still recommend a Sonnet-class model or better for this step. The hard part is not "this is a mug". The hard part is "is this the same lid" or "is this a ball head or a flat head".
In Claude Code, there are two ways to read the photos. The first way is to save the contact sheet in the project folder and open it with the Read tool. The common workflows page says that you can drag an image into the session or give a file path (common workflows docs). The second way is to give the photo check to a subagent. The subagent reads the photos in its own context and sends back only the answer, for example "rank 3 is the same product".
The official docs describe subagents for this case: a side task with a lot of output that you will not need again (subagents docs). You can also give a subagent its own cheaper model to control cost. For batches of 100 products or more, the second way keeps the main session small.
Step 4: read the 1688 product detail for the wholesale price and MOQ
After the photo check, call alibaba1688/product_detail for the chosen product. The parameter can be the full product link or the numeric offerId. The mug detail returned at 00:17 Singapore time and cost $0.001389. The most useful part of the response is the skus array. This mug has 38 SKUs for different lids, colors and sizes, from 7.88 to 11.53 yuan.
We chose the SKU that matches the Yandex Market item: standard lid, black, 510 ml. It costs 8.17 yuan, down from 8.5 yuan, and has 97,467 units in stock. The same SKU has a weight of 284 grams and a box size of 9.5 × 9.5 × 18 cm. The supplier is a mug factory in Yongkang, Zhejiang. The MOQ is 1. The product has 24,829 units sold, and the page shows this as "25,000+".
| Product | SKUs on the page | SKU price range (CNY) | Chosen SKU price (CNY) | MOQ | Weight | Box size |
|---|---|---|---|---|---|---|
| Car travel mug | 38 | 7.88–11.53 | 8.17 | 1 | 284 g (sync) | 9.5 × 9.5 × 18 cm (sync) |
| Cosmetics organizer | 5 | 3.76 (all SKUs) | 3.76 | 1 | 187 g (async spec table) | 15 × 12.5 cm, read from the supplier photo |
| Magnetic phone holder | 2 | 17–18 | 17 | 2 | 78 g (sync) | in the SKU (sync) |
| Star projector | 8 | 5–20.97 | 16.21 | 1 | missing in sync and async | missing |
| City backpack (similar only) | 2 | tiers 9.5–11 | 11 | 1 | missing in sync and async | missing |
Why use the SKU price and not the product price_min? Because the SKU prices on one page can differ a lot. The projector page has 8 SKUs, from 5 yuan to 20.97 yuan. The 5-yuan SKU is a USB cable, and the 20.97-yuan SKU is a standing model with a remote control. An agent that uses price_min as the cost shows a margin that is much too high.
Our rule for the agent is simple. Find the design from the Yandex Market title and photo. Then find the matching row in skus. If no row matches, stop and ask a person.
The MOQ is the next field to check. The catalog calls min_order_quantity the first gate in 1688 wholesale and says to check it before you buy. In this test, 4 of the 5 chosen products had an MOQ of 1. The phone holder had an MOQ of 2. But the image-search results also showed a backpack with an MOQ of 500, and a keyword search showed a mug with an MOQ of 100.
The price_tiers field shows volume prices. The sync response for the backpack showed three tiers. They were 11 yuan for 1 to 199 units, 10 yuan for 200 to 2,999 units, and 9.5 yuan above that. The async response showed only one tier: 11 yuan from 1 unit. So the same product can show different prices at different times. Before a large order, check the real tiers on the 1688 page. Our margin table always uses the smallest-quantity price, which is the most careful cost.
Missing weight: the agent must know when to stop
International freight is priced per kilogram. Yandex Market middle-mile delivery is priced per liter. So the margin needs the unit weight and the box size. For the mug and the phone holder, the sync detail gave weight_g and the box size in the SKU.
For the organizer, the sync detail had no weight in the SKU. We sent an async detail job at 00:34 Singapore time and got the result at 00:36. Its spec table showed "gross weight 187 g". We read the size from the dimensions printed on the supplier's main photo: a round box, 15 cm in diameter and 12.5 cm high. The script uses 15 × 15 × 12.5 cm, which is about 2.8 liters. The projector and the backpack had no weight and no size in either response.
In this case, the agent must stop. It must mark freight and middle mile as "missing" and not invent a number. Our script does exactly this. For the projector and the backpack, it calculates only the money after the platform fee, the delivery fees and the purchase price. That is 876 rubles for the projector and 2,475 rubles for the backpack, and the margin column stays empty.
The Skill rule can be short: "If weight or size is missing, list the missing fields and ask the supplier. Do not estimate." This rule stops the most common error. A model can fill in a number from general knowledge, for example "a backpack weighs about 0.6 kg". The margin then looks reasonable, but nothing supports it.
The backpack has a larger problem. The Yandex Market title says "25 liters" and "for a 15.6-inch laptop". The 1688 rank-3 bag says "laptop size: 8 inches" and "capacity: 36–55 liters" in its async spec table. In the photos, both bags are plain black with one front zip pocket. A photo check alone can call them the same, but a spec check shows two different products. For bags, shoes and clothes, the agent must compare the specs as well as the photos.
Step 5: where each number in the margin formula comes from
The margin formula follows the unit economics that Russian sellers use. Start with the price. Subtract the placement fee, the delivery fee, the processing fee, the pickup fee and the middle-mile fee. Then subtract the purchase price and the freight. The table below gives the source and the read date of each item.
We use the Yandex Market FBS model. In FBS, the seller ships from its own warehouse, and the platform picks up the orders. This is the closest model for a seller who imports small lots from China and ships from a small warehouse in Moscow.
| Item | Value | Source and read date |
|---|---|---|
| Placement fee (размещение) | Price × category rate, 44.5% to 50% for the 5 categories | Yandex Market placement fee table, read 2026-11-08 |
| Delivery to the buyer | 5% of the price, up to 1,000 rubles | FBS service fees, read 2026-11-08 |
| Order processing | 25 rubles per order (not for large items) | Same page |
| Pickup | 500 rubles per day for 1 to 10 orders, so 50 rubles per order at 10 orders per day | Same page |
| Middle mile | 92 rubles up to 1 liter, plus 8 rubles per added liter, volume rounded up | Same page |
| Exchange rate | 1 yuan = 12.2651 rubles, 1 USD = 82.1386 rubles | Bank of Russia official rates, 2026-11-07 |
| International freight | 120 rubles per kg (lowest rate) | CDEK B2B page, "consolidated cargo from China from 120 rubles per kg", read 2026-11-08 |
The original Yandex Market FBS middle-mile rates. The teal box marks the three bands that this article uses. Captured on November 8, 2026, Singapore time. Yandex Market seller help center screenshot
The category rate is the largest number in the table, and it surprised us. The Yandex Market placement table lists rates by category for four models: FBY, FBS, Express and DBS. Our categories are between 44.5% and 50%. For example, the car accessories group is 52% overall. The placement fee uses the price that the seller sets, even after a platform discount or buyer points. If the buyer returns the item, the platform pays the placement fee back in the same month.
The FBS page has another example: a 3,000-ruble tablet case with a 510-ruble placement fee. That is 17%. So the rates differ a lot between categories. For this reason, we also calculated each row at 17%. This shows a low-fee category, not the real rate for these 5 products.
There is one more special rule. For FBS items under 300 rubles and under 5 liters, one special rate of 42% applies until the end of 2026. This rate includes placement, delivery and middle mile. Our 5 products all cost 1,200 rubles or more, so the rule does not apply. For small parts at a few dozen rubles, the agent must test this rule first, or it will charge the same fees twice.
For the exchange rate, we used the Bank of Russia official rate. The yuan rose 1.47% in one week, as the table shows. This move has almost no effect on the margin.
The phone holder cost goes up by about 3 rubles, so its margin falls by 0.25 percentage points. The mug cost goes up by 1.5 rubles, but its placement fee is 1,750 rubles. In these rows, the purchase price is only 1% to 17% of the retail price. So the category rate is more than 100 times as important as the exchange rate. A real currency exchange also adds a bank or payment spread, which the table does not include.
| Bank of Russia rate date | RUB per 1 CNY | RUB per 1 USD | RUB per 1 EUR |
|---|---|---|---|
| 2026-10-31 | 12.0873 | 80.5573 | 89.6603 |
| 2026-11-04 | 12.1816 | 81.6699 | 91.6010 |
| 2026-11-06 | 12.2570 | 81.7947 | 92.1581 |
| 2026-11-07 (used in this article) | 12.2651 | 82.1386 | 92.1924 |
On November 6, 2026, the People's Bank of China rate was 12.2130 rubles per yuan (rate notices, in Chinese). That is about 0.4% below the Bank of Russia rate of 12.2570. For the dollar values in this article, we use the Bank of Russia cross rate of November 7. At that rate, 8.17 yuan is about $1.22.
For freight, we used the CDEK public rate of "from 120 rubles per kg". This is the lowest rate. The CDEK consolidated cargo page says that such cargo starts at 100 kg and takes 10 to 14 days (CDEK consolidated cargo page). 100 kg is about 352 mugs or 1,282 phone holders. A small trial order goes by express courier at a much higher rate. This is one reason why every margin in the table is on the high side.
Live results: same product × 1688 price × Yandex Market price × margin
Here is the full result of the check. A script calculated every number from the raw responses. It reads the Yandex Market and 1688 JSON files, the Bank of Russia XML file and the photo labels. It applies the fees from the table above and writes one JSON file. Rubles are rounded to whole numbers. The script rounds a .5 value to the nearest even number, so 274.5 shows as 274 and 2,920.5 shows as 2,920.
| Product (Yandex Market) | Price (RUB) | 1688 cost (CNY) | MOQ | Cost in RUB | Fee rate | Placement fee | Delivery + fixed | Middle mile | Freight | Margin (RUB) | Margin % |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Car travel mug, 510 ml | 3,500 | 8.17 | 1 | 100 | 50% | 1,750 | 250 | 100 | 34 | 1,266 | 36.2% |
| Rotating cosmetics organizer | 3,990 | 3.76 | 1 | 46 | 49.5% | 1,975 | 274 | 108 | 22 | 1,564 | 39.2% |
| Magnetic car phone holder | 1,200 | 17 | 2 | 209 | 44.5% | 534 | 135 | 92 | 9 | 221 | 18.4% |
| Astronaut star projector | 2,500 | 16.21 | 1 | 199 | 49% | 1,225 | 200 | missing | missing | not calculated (876 left after cost) | — |
| City backpack | 5,900 | 11 (similar model) | 1 | 135 | 49.5% | 2,920 | 370 | missing | missing | not calculated (similar model; 2,475 left after the purchase cost) | — |
The first conclusion is direct. For these small goods, the 1688 cost is a very small part of the price. It is 2.9% for the mug, 1.2% for the organizer and 17.4% for the phone holder. The platform fee takes most of the money. In the 3,500-ruble price of the mug, the placement fee is 1,750 rubles, more than 17 times the purchase cost.
So Russian sellers are right when they say that "the goods are cheap", but that is only half of the story. At a 17% category rate, the mug margin goes from 36.2% to 69.2%. The organizer goes from 39.2% to 71.7%, and the phone holder goes from 18.4% to 45.9%. The fee rate is the most sensitive number in the table.
The phone holder shows a different problem. It has the most ratings on Yandex Market (5,372), so it sells. But in a 1,200-ruble price, the 17-yuan cost is 209 rubles. Each order also pays 25 rubles for processing and 50 rubles for pickup. These fixed fees stay the same at 1,200 or at 3,500 rubles. Yandex Market has a separate 42% rate for items under 300 rubles, as the section above shows.
The table does not include some costs. If you do not know them, the table looks like net profit. The next table lists them with a rough value where public data permits one.
| Cost not in the margin table | Rough value for our rows | Source |
|---|---|---|
| Import VAT | 22% of cost plus freight: about 30 RUB (mug), 15 RUB (organizer), 48 RUB (phone holder) | Basic VAT rate 22% from 2026-01-01 (Federal Tax Service note, in Russian, ConsultantPlus summary, in Russian) |
| Customs duty | Depends on the product code | Find it for each code |
| Income tax or simplified tax | Depends on your tax status | Your own tax setup |
| Returns | 15 RUB sorting fee per return, plus return shipping at the middle-mile rate | FBS service fees |
| Advertising and promotions | Your own budget | Not public |
| Currency spread and payment fees | Your bank or payment service | Not public |
Together, these costs can turn the phone holder row into a loss. Use this table to remove clearly bad products. Do not use it as the final buying decision.
The same mug has 5 prices on Yandex Market
Step 1 took only the top mug at 3,500 rubles. Does the price of the top seller show the market price?
At 00:36 Singapore time, we ran yandex/market again with a narrower keyword, "термокружка coffee 510 мл", and took 20 items. We put each item in one of three tiers. Tier A has the same body and lid. Tier B has the same type of mug with a different lid or sleeve. Tier C is a different product.
The result was 5 items in tier A, 10 in tier B and 5 in tier C. The 5 tier-A items cost 3,500, 2,874, 2,441, 1,586 and 1,227 rubles. The highest price is almost 3 times the lowest, and the median is 2,441 rubles. So the top seller has the highest price. A new seller with the same mug will find it hard to get 3,500 rubles.
At the median of 2,441 rubles (about $29.72), the margin is 789 rubles, or 32.3%. At the lowest price of 1,227 rubles (about $14.94), the margin is only 243 rubles, or 19.8%. With a 17% category rate, the same two prices give 1,595 rubles (65.3%) and 648 rubles (52.8%).
This extra query cost only $0.001389. It changed the result from "a 36% margin" to "19.8% to 36.2%, based on your price". So we recommend one more step in the agent. After the photo check, search Yandex Market again with the title words of the same product. Count the sellers and look at the price spread. Then calculate the margin from the median price, not from the top seller's price.
As a cross-check, at 00:37 Singapore time we called alibaba1688/search once with a Chinese keyword. The keyword means "304 stainless steel coffee cup, car travel mug, 510 ml". We took 20 items sorted by sales. The median of the lowest prices was 11.5 yuan, with a range of 2.96 to 15.5 yuan. The 2.96-yuan item has the same name as our mug, but its MOQ is 100, so it is a bulk price. Its response has no photo, so we cannot tell if it is the same model.
The projector keyword search at 00:46 Singapore time gave a median of 22.94 yuan and a range of 5 to 72 yuan. That is higher than the 16.21 yuan of the image-search pick. Each method has a job. Image search finds the same product, and keyword search shows the price band.
A US check: the same type of mug on Amazon
Many readers of this English page sell in the US, not in Russia. The agent works the same way there. Only step 1 changes: use amazon/search with a domain parameter in place of yandex/market (Amazon product search capability). To show the price level, we made one extra call at 01:45 Singapore time. The keyword was "stainless steel car coffee travel mug 510ml" on amazon.com. The call returned 10 items, 9 with a price, and cost $0.002236.
| Amazon.com item (keyword search, not photo-checked) | Price | Rating | Ratings |
|---|---|---|---|
| Generic stainless steel travel coffee mug, 18 oz (510 ml), black | $9.99 | 1.0 | 1 |
| Maga 17 oz insulated tumbler with lid | $9.99 | 4.5 | 709 |
| SPLMIFA leak-proof travel coffee mug | $7.99 | 4.5 | 1,676 |
| YINJOYI 17 oz travel coffee cup | $9.99 | 4.6 | 3,984 |
| CHANCCI 16 oz travel coffee mug | $15.29 | 4.4 | 570 |
| THERMOS Stainless King travel mug, 16 oz | $27.99 | 4.5 | 12,629 |
The 9 prices go from $7.99 to $27.99, and the median is $9.99. The 1688 mug costs about $1.22, so the purchase cost is about 12% of the median Amazon price. That share is much higher than the 2.9% on Yandex Market. These items are not photo-checked, so treat them as a price band, not as the same product. Amazon also has its own referral and fulfillment fees, and this article does not model them.
парсер 1688: build your own scraper or use an API
Russian sellers who search for "парсер 1688" (a 1688 parser) usually want a tool that gets 1688 prices in bulk. On GitHub, open-source projects use two methods. The first method imitates a browser. One image-search project with 204 stars gets the cookie and token, signs the request, uploads the photo and runs the search. Its author says that the code is "for learning only" and not for business use (1688 image-search project).
The second method is a command-line tool for AI agents. For example, 1688-cli runs in a real Chrome browser and needs a QR-code login in the 1688 app (1688-cli). It can search, run image search and read details. It can also ask for quotes and place orders.
Both methods have the same costs. You maintain the login and the request signature. You change the code each time the page changes. You also carry the risk to your 1688 account.
1688 also has its own open platform with an image-search capability for cross-border buyers and ERP providers (Alibaba open platform image-search capability). But its documentation says that you must first subscribe to a cross-border purchasing or ERP solution (cross-border image-search API docs). That path suits qualified service providers. It does not suit a single seller who wants a quick test.
With a data API such as EveryInfra, you need no login and no signature. You pay per call, and failed calls are free. The trade-off is that you get clean fields, but you cannot place orders or ask for quotes. The table compares the four methods.
| Method | 1688 login | Image search | Orders and quotes | Upkeep | Cost |
|---|---|---|---|---|---|
| Open-source browser imitation | Yes, you keep cookies and signatures | Yes | No | High, breaks when the page changes | Free, but your account carries the risk |
| Command-line tool in a browser | Yes, QR login | Yes | Yes | Medium | Free, but your account carries the risk |
| 1688 open platform | Developer status and a paid solution | Yes (cross-border product pool) | Depends on the solution | Low | Per solution |
| EveryInfra data API | No | Yes (up to 5 per call) | No | Low | $0.001389 to $0.005556 per call, no charge on failure |
For a sourcing agent, "no orders" is not a problem. The job of the agent is to decide before you order. For the order itself, sellers usually use a buying agent or their own 1688 account. The data API looks, and a person or a buying agent buys.
Write the process as a Skill: the same rules on every check
A Claude Code Skill is a SKILL.md file with instructions. Claude uses it in related tasks, and you can also start it with /skill-name. Unlike CLAUDE.md, the Skill body loads only when Claude uses it (Skills docs). So long reference text takes almost no context at other times. Sourcing rules are a good fit for a Skill, because the fee table, the rate source and the missing-data rule do not change. Here is the skeleton of a configuration example:
---
name: sourcing-margin
description: Take a Russian product keyword, read the Yandex Market price, find the same item on 1688 and calculate the FBS margin
---
1. Call everyinfra_call_api: platform=yandex, action=market, city=moscow, sort=popular, limit=10.
Rank by rating_count. purchase_count can be null, so do not use it as the main signal.
2. Call alibaba1688/image_search with the image_url of the chosen item, mode=async. Read the result with everyinfra_get_job.
3. Resize the source photo and the 5 candidates to 300x300 and join them into one sheet.
Label each candidate same / similar / wrong. Rank 1 is not always the same product.
For bags, shoes, clothes and other look-alike goods, also compare specs (size, volume, fit).
4. Call alibaba1688/product_detail for the same product. Take the SKU price, weight_g and box size of the matching design.
If weight or size is missing, try once more with mode=async. If still missing, list the missing fields. Do not estimate.
5. Run yandex/market again with the title words of the same product (limit=20). Take the median price of the same product.
6. Run margin.py with the FBS column of the fee table, the Bank of Russia rate of the day and the lowest freight rate.
Output the table and list the taxes and costs that it does not include.
Three rules in this Skill come from the live results, not from imagination. The table shows each rule and the data behind it.
| Rule in the Skill | Evidence from the live test |
|---|---|
| Use async mode for image search | 2 of 7 sync image searches timed out at 85 seconds (no charge) |
| Rank 1 is not always the same product | Rank 1 was wrong or only similar in 3 of 5 searches |
| Do not estimate a missing weight | 2 of 5 products had no weight in the sync or async detail |
| Use the median price of the same product | The same mug sells at 1,227 to 3,500 rubles from 5 sellers |
To run a batch every day or every week, use the non-interactive mode claude -p (headless docs). Use --allowedTools to allow tools in advance and --output-format to get structured output. There is one trap. With --bare, Claude Code does not read the project .mcp.json and does not find Skills automatically. It connects only the MCP servers that you pass with --mcp-config.
The same page also describes --max-budget-usd, which sets a spend limit for one run. When a run reaches the limit, Claude Code stops the remaining background work. For per-call data fees, a second budget gate outside the agent is a good idea. Claude Code also has scheduled tasks for runs that start inside a session (scheduled tasks docs). Another article uses them to collect Reddit pain points every day (Claude Code scheduled tasks in practice).
| Claude Code feature | Use in this agent | Version or date | Official source |
|---|---|---|---|
| Remote MCP over HTTP | Connect the EveryInfra tools | Read 2026-11-08 | MCP docs |
| Permissions and settings | Allow only the two EveryInfra tools | Read 2026-11-08 | Permissions docs |
| Subagents | Photo check in a separate context | Read 2026-11-08 | Subagents docs |
| Skills | Fixed sourcing rules | Read 2026-11-08 | Skills docs |
claude -p, --max-budget-usd
|
Scheduled batch runs with a spend limit | Read 2026-11-08 | Headless docs |
| MCP tasks in the terminal | Slow tool calls move to the background | 2.1.319, 2026-11-06 | Changelog |
permissions.denyInsteadOfPrompting |
No stop on an unanswered prompt | 2.1.319, 2026-11-06 | CHANGELOG.md |
Slow image search and MCP tasks in Claude Code
2 of 7 image searches timed out after 85 seconds in sync mode. A remote MCP setup has two ways to handle slow calls. The first way is on the data side. Send mode: async to everyinfra_call_api, get a job_id at once and poll it with everyinfra_get_job. Our two async image searches took about 1 minute 22 seconds and about 2 minutes.
The second way is on the Claude Code side. Claude Code 2.1.319 was published on npm on November 6, 2026 (npm release history). Its changelog adds support for MCP tasks in the terminal (Claude Code changelog page). When an MCP server runs a tool call as a task, Claude Code moves it to the background at once. Claude gets the result when the task finishes. To make Claude Code wait inside the tool call, set CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND.
The same release adds the permissions.denyInsteadOfPrompting setting (Claude Code CHANGELOG). With it, a tool call that would wait for a permission prompt is denied, and the turn continues. It works in terminal sessions, subagents and teammates. In a batch run, this setting stops the agent from waiting on a prompt that nobody answers. Use it together with the rule that allows the two EveryInfra tools. Otherwise, Claude Code also denies the calls that you need.
This test also shows that failed calls are free. Both 503 timeouts had billing.charged: false and refund.status: succeeded. At 00:17:57 Singapore time, we sent two yandex/market requests at the same moment. They hit the test key limit of 10 calls per minute, and both returned HTTP 429 with no charge. To reconcile refunds for failed calls, read the failure refund reconciliation guide. To let an agent fix its own parameters from error text, read API errors that agents can fix.
The cost: how much to check 100 products
At catalog prices, one product needs 3 data calls. They are yandex/market at $0.001389, alibaba1688/image_search at $0.005556 and alibaba1688/product_detail at $0.001389. The total is $0.008334. The price is per call: limit: 10 and limit: 20 cost the same. The extra Yandex Market query for the price band adds $0.001389, for a total of $0.009723. 100 products cost about $0.83 without the price band or $0.97 with it.
This test had 23 charged calls with a total of $0.057254. There were 6 yandex/market calls and 5 charged image searches, and the 2 timeouts had no charge. There were also 8 product details (5 sync and 3 async), 2 keyword searches on 1688 and 2 amazon/search calls. The MCP tool list read was free. The total is higher than 5 × $0.008334, because we fetched some products twice and ran cross-checks.
The Claude side depends on your plan. With Claude Code on a Claude subscription, photo reading and reasoning count toward the subscription usage. The subagents docs say that subagent requests "count toward the same usage limits". With an API key, you pay per token.
The table below counts only the 715 vision tokens of the contact sheet. Tool descriptions, JSON responses and model output also count. We did not measure them in Claude Code, so use your own /usage numbers (cost docs).
| Scale | Data fee (3 calls per item) | With price band (4 calls per item) | Photo check (Sonnet 5.5, 715 tokens per item) |
|---|---|---|---|
| 1 product | $0.008334 | $0.009723 | $0.00143 |
| 100 products | $0.83 | $0.97 | $0.14 |
| 1,000 products | $8.33 | $9.72 | $1.43 |
The data fee for 100 products is less than $1.
Limits and cautions
First, EveryInfra does not supply storefront product data from Ozon or Wildberries. This article uses Yandex Market prices because we can read its storefront prices. A Yandex Market price is not the price that you can get on Wildberries or Ozon. The three platforms have different buyers, fee rates, logistics and promotions.
Ozon sellers can read their own store data with the Ozon seller API (Ozon Seller API docs). Yandex Market sellers also have their own API (Yandex Market partner API docs). These APIs give data from your own seller account, not storefront data about competitors. Their use is different from the use in this article.
Second, image search returns up to 5 candidates per call, and the ranking is not reliable. When none of the 5 is the same product, the agent must search again with a different photo. Use the second product photo or a photo with no background, or switch to a Chinese keyword search. Do not pick one of 5 similar items to fill the row.
Third, 1688 prices, stock and volume tiers change all the time, and products can disappear. We saw different tiers for the same product in the sync and async responses. Keep the fetch time with each result. Do not order from a result that is more than one or two weeks old.
Fourth, the fees, exchange rates and freight in the table are public standard prices. They do not include discounts from the platform or the carrier, and they do not include tax, returns or advertising. We do not give investment or financial advice. The margins in this article are estimates from public data.
Fifth, the rules change. On October 29, 2026, the Russian State Duma passed a bill in first reading (GoGov report, in Russian). The bill adds 22% VAT to orders from foreign online stores. The plan is to start on January 1, 2027, and the deadline for second-reading amendments is November 12. The bill mainly affects direct cross-border shipments to Russian buyers. For sellers with stock in Russia, some competitors will have higher costs.
The report also says that foreign orders under 200 euros currently have no duty. At the Bank of Russia rate of 92.1924 rubles per euro on November 7, 2026, that is about 18,438 rubles. You can also check the euro reference rate on the European Central Bank page.
Recent changes
The body of this article already covers Claude Code 2.1.319 and the October 29 VAT bill. This list shows only the outside changes that alter the margin formula.
2026-10-22: The Russian customs news site TKS.RU reported new Yandex Market FBY warehouse rules from November 1, 2026 (TKS.RU report). The 150-ruble fee per extra unit at intake ends. A fine of 10 rubles per liter of volume difference replaces it. The sorting center fee changes to 20 rubles for the first liter and 5 rubles per added liter. FBY sellers must change the logistics part of the formula and not copy the FBS method of this article.
2026-07: T-Journal reported that Wildberries raised its fees for Chinese sellers after pressure from the competition authority (T-Journal report). An industry group estimated December 2025 fees of about 11% on Wildberries and 14% on Ozon for Chinese sellers. Russian sellers in some categories paid up to 44%. For readers, the same product can carry very different fees for different sellers.
FAQ
1688 api pricing: how much does a 1688 API cost?
This question comes from the Google suggestion "1688 api pricing", read on November 8, 2026. On the 1688 open platform, you must first subscribe to a solution, and the price depends on the solution. EveryInfra charges per call. alibaba1688/product_detail costs $0.001389, alibaba1688/search costs $0.002778 and alibaba1688/image_search costs $0.005556. Failed calls and timeouts are free, and one full product check costs $0.008334.
1688 api key: do I need my own key from 1688?
This question comes from the Google suggestion "1688 api key", read on November 8, 2026. The 1688 open platform needs a developer account, an app and a paid solution. EveryInfra does not need a 1688 account or a 1688 key. You need one EveryInfra key from the quickstart. Add it in Claude Code with --header.
1688 api free: is there a free 1688 API?
This question comes from the Google suggestion "1688 api free", read on November 8, 2026. Open-source browser-imitation projects are free, but you must keep the login and the signature working. Your account also carries the risk, and some projects forbid business use. Our catalog and the MCP tool list are free to read. Data calls are charged per call.
1688 api github: is there a GitHub project that I can use?
This question comes from the Google suggestion "1688 api github", read on November 8, 2026. Yes, there are several. The image-search project and 1688-cli in this article are two examples. Read their licenses and notes first. One says "for learning only", and the other needs your own 1688 login.
парсер 1688: is there a ready-made 1688 parser?
This question comes from the Google suggestion "парсер 1688" ("1688 parser"), read on November 8, 2026. On GitHub, browser-imitation scrapers need working cookies and signatures, and some forbid business use. Command-line tools in a real Chrome need a 1688 login by QR code. With both types, your 1688 account carries the risk. A data API needs no login and cannot place orders. The "парсер 1688" section compares the four methods.
Do these platforms give a direct API or link for orders?
This question comes from a Reddit r/dropshipping thread that asks "do these platforms provide link/API" (original thread). Several replies say that 1688 has no drop-shipping API for normal buyers. Sellers use a buying agent or a platform that already has the connection. A data API answers "what does it cost and which item is the same". For orders, you still need a buying agent or your own 1688 account.
References
- Connect Claude Code to tools via MCP, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/mcp
- Create custom subagents, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/sub-agents
- Extend Claude with skills, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/skills
- Run Claude Code programmatically (headless), Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/headless
- Claude Code settings, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/settings
- Configure permissions, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/permissions
- Manage costs effectively, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/costs
- Common workflows, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/common-workflows
- Scheduled tasks, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/scheduled-tasks
- Hooks reference, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/hooks
- Changelog, Claude Code docs, Anthropic, read November 8, 2026, https://code.claude.com/docs/en/changelog
- CHANGELOG.md (2.1.319), anthropics/claude-code, GitHub, read November 8, 2026, https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md
- @anthropic-ai/claude-code release history (2.1.319 published November 6, 2026), npm, https://www.npmjs.com/package/@anthropic-ai/claude-code
- Vision, Claude Platform docs, Anthropic, read November 8, 2026, https://platform.claude.com/docs/en/build-with-claude/vision
- Pricing, Claude Platform docs, Anthropic, read November 8, 2026, https://platform.claude.com/docs/en/about-claude/pricing
- Transports (2025-06-18), Model Context Protocol specification, https://modelcontextprotocol.io/specification/2025-06-18/basic/transports
- Tools (2025-06-18), Model Context Protocol specification, https://modelcontextprotocol.io/specification/2025-06-18/server/tools
- EveryInfra data catalog, EveryInfra, read 00:13 SGT November 8, 2026, https://api.everyinfra.com/api/v1/social/catalog
- EveryInfra 1688 catalog, EveryInfra, read November 8, 2026, https://api.everyinfra.com/api/v1/social/catalog?platform=alibaba1688
- EveryInfra Yandex catalog, EveryInfra, read November 8, 2026, https://api.everyinfra.com/api/v1/social/catalog?platform=yandex
- EveryInfra Amazon catalog, EveryInfra, read November 8, 2026, https://api.everyinfra.com/api/v1/social/catalog?platform=amazon
- Product placement fees (in Russian), Yandex Market seller help center, read November 8, 2026, https://yandex.ru/support/marketplace/ru/introduction/rates/placement
- FBS service fees (in Russian), Yandex Market seller help center, read November 8, 2026, https://yandex.ru/support/marketplace/ru/introduction/rates/models/fbs
- Yandex Market partner API docs (in Russian), Yandex, read November 8, 2026, https://yandex.ru/dev/market/partner-api/doc/ru/
- Official exchange rates, XML, November 7, 2026, Bank of Russia, https://www.cbr.ru/scripts/XML_daily.asp?date_req=07/11/2026
- Daily official exchange rates page, Bank of Russia, read November 8, 2026, https://www.cbr.ru/currency_base/daily/
- Central parity rate notices (in Chinese, notice of November 6, 2026), People's Bank of China, https://www.pbc.gov.cn/zhengcehuobisi/125207/125217/125925/index.html
- Euro foreign exchange reference rates, European Central Bank, read November 8, 2026, https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/index.en.html
- International B2B cargo (in Russian), CDEK, read November 8, 2026, https://b2b.cdek.ru/
- Consolidated cargo from China and Turkey from 100 kg (in Russian), CDEK, read November 8, 2026, https://b2b.cdek.ru/freight
- How to calculate VAT under the rules from 2026 (in Russian), Federal Tax Service of Russia, December 17, 2025, https://www.nalog.gov.ru/rn25/news/activities_fts/16590316/
- VAT rate increase from January 1 (in Russian), ConsultantPlus, read November 8, 2026, https://www.consultant.ru/document/cons_doc_LAW_517272/
- A new tax on purchases from foreign marketplaces (in Russian), GoGov, read November 8, 2026, https://gogov.ru/news/941292
- Yandex Market changes warehouse processing fees (in Russian), TKS.RU, October 22, 2026, https://www.tks.ru/politics/2026/10/22/0017/yandeks-market-izmenit-tarifyi-skladskoj-obrabotki-tovarov/
- Price growth on Wildberries and Ozon (in Russian), T-Journal, read November 8, 2026, https://t-j.ru/kitai-zahvatil-marketpleisy/
- Ozon Seller API docs (in Russian), Ozon, read November 8, 2026, https://docs.ozon.ru/api/seller/
- Cross-border image search capability (in Chinese), Alibaba open platform, read November 8, 2026, https://open.1688.com/ability/detail?key=1611630817677
- alibaba.cross.similar.offer.search API docs (in Chinese), Alibaba open platform, read November 8, 2026, https://open.1688.com/api/apidocdetail.htm?aopApiCategory=linkplus&id=com.alibaba.linkplus:alibaba.cross.similar.offer.search-1
- 1688_crawler-image_search_products, GitHub, read November 8, 2026, https://github.com/Carmenliukang/1688_crawler-image_search_products
- 1688-cli, GitHub, read November 8, 2026, https://github.com/superjack2050/1688-cli
- wildberries-agent-integration, GitHub, read November 8, 2026, https://github.com/bearscloud/wildberries-agent-integration
- wb-calculator, GitHub, read November 8, 2026, https://github.com/husravtjk/wb-calculator
- statistics: mathematical statistics functions (median), Python docs, read November 8, 2026, https://docs.python.org/3/library/statistics.html
- Which Chinese platforms are used for sourcing specifically for dropshipping?, Reddit r/dropshipping, read November 8, 2026, https://www.reddit.com/r/dropshipping/comments/1x3kq5q/which_chinese_platforms_are_used_for_sourcing/
Originally published on the EveryInfra blog: 1688 API in Claude Code: A Sourcing Agent That Checks Margin Against Yandex Market. This article was written with AI assistance; the numbers come from the API calls and sources linked above, and were checked before publishing.
EveryInfra is a pay-per-call data API for AI agents and developers: everyinfra.com.



Top comments (0)