Install
openclaw skills install upkuajing-map-merchants-searchOfficial skill for upkuajing (跨境魔方). Search merchants on map (地图获客). Find merchants by region or nearby location, get merchant details including name, addres...
openclaw skills install upkuajing-map-merchants-searchQuery merchant information using the UpKuaJing Open Platform API. This skill provides map-based merchant search with two search modes: region search and nearby search.
This skill provides access to UpKuaJing's map merchant database through:
merchants_search.py): Search merchants by keywords and locationgeography_list.py): Get country/province/city lists for location parameterspython --versionpip install -r requirements.txtScript directory: scripts/*.py
Run example: python scripts/*.py
Important: Always use direct script invocation like python scripts/merchants_search.py. Do NOT use shell compound commands like cd scripts && python merchants_search.py.
merchants_search.py)Search merchants by keywords and geographic area.
Parameters: See Merchants Search API
Two Search Modes:
geoDistanceExamples:
# Country search - Find restaurants in Brazil
python scripts/merchants_search.py \
--params '{"keywords":["restaurant"],"countryCodes":["BR"]}' \
--query_count 100
# Multi-country search with phone filter - Find restaurants in US or China with phone
python scripts/merchants_search.py \
--params '{"keywords":["restaurant"],"countryCodes":["US","CN"],"existPhone":true}' \
--query_count 50
# Industry filter - Find car dealers in Thailand
python scripts/merchants_search.py \
--params '{"keywords":["car dealer"],"countryCodes":["TH"],"industries":["Cars"]}' \
--query_count 100
# Nearby search - Find hotels within 5km of a point
python scripts/merchants_search.py \
--params '{"keywords":["hotel"],"geoDistance":{"location":{"lat":31.1104643,"lon":29.7602221},"distance":"5km"}}'
# Province and city filter - Find restaurants in a specific province/city
python scripts/merchants_search.py \
--params '{"keywords":["restaurant"],"provinceIds":["2277"],"cityIds":["19975"]}' \
--query_count 50
# Shop name filter - Find shops by specific name
python scripts/merchants_search.py \
--params '{"companyNames":["car care"],"countryCodes":["TH"]}' \
--query_count 100
# Multi-filter search - Combine multiple filters
python scripts/merchants_search.py \
--params '{"keywords":["restaurant"],"countryCodes":["US"],"provinceIds":["1447"],"industries":["Cars"],"existPhone":true}' \
--query_count 50
Task Resume: Use --task_id to resume interrupted large queries:
python scripts/merchants_search.py --task_id 'your-task-id-here' --query_count 2000
geography_list.py)Get geographic hierarchy data for building search parameters.
Examples:
# Get country list
python scripts/geography_list.py --type country
# Get province list for a country
python scripts/geography_list.py --type province --country_id 1
# Get city list for a country
python scripts/geography_list.py --type city --country_id 1
~/.upkuajing/.env file as UPKUAJING_API_KEYFirst check if the ~/.upkuajing/.env file has UPKUAJING_API_KEY;
If UPKUAJING_API_KEY is not set, prompt the user to choose:
When API response indicates insufficient balance, explain and guide user to top up:
auth.py --new_rec_order)Use this script to get account information for UPKUAJING_API_KEY: auth.py --account_info
Merchant search API calls incur fees, different interfaces have different billing methods.
Latest pricing: Users can visit Detailed Price Description
Or use: python scripts/auth.py --price_info (returns complete pricing for all interfaces)
Billed by number of calls, each call returns up to 100 records:
ceil(query_count / 100) timesFree of charge — No fees for country/province/city list queries.
Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.
| User Intent | Use API |
|---|---|
| "Find merchants by country/region" | Merchants Search (countryCodes) |
| "Find merchants by province/city" | Merchants Search (provinceIds, cityIds) |
| "Find merchants near a location" | Merchants Search (geoDistance) |
| "Filter by industry or contact info" | Merchants Search (industries, existPhone, existWebsite) |
| "Find shops by name" | Merchants Search (companyNames) |
| "Get country/province/city data" | Geography List |
UPKUAJING_API_KEY in ~/.upkuajing/.env fileUnderstand user intent:
Check API documentation:
countryCodes with keywordsgeoDistance with location and distanceexistPhone=true or existWebsite=true to filter by contact availabilityindustries to filter by business typeprovinceIds and cityIds to filter by specific province or citycompanyNames to find shops by specific namepython scripts/auth.py --price_info to get accurate pricing informationOther UpKuaJing skills you might find useful: