Query paginated trade-area data for a company — retrieve country/region breakdowns with trade counts, amounts, and percentages for market-analysis. Trigger:...
---
name: customs-company-area-list
description: "Query paginated trade-area data for a company — retrieve country/region breakdowns with trade counts, amounts, and percentages for market-analysis.\n\nTrigger: customs area list, paginated region query, company trade country breakdown, import-export market analysis, trade region drill-down"
metadata: {"version":"1.0.0","homepage":"https://www.upkuajing.com","clawdbot":{"emoji":"🗺️","requires":{"bins":["python"],"env":["UPKUAJING_API_KEY"]},"primaryEnv":"UPKUAJING_API_KEY"}}
---
# Customs Company Area Trade List
Query paginated trade area data for a company from customs data using the UpKuaJing Open Platform API.
## Overview
This skill provides access to paginated trade area data from UpKuaJing's customs database. Given a company ID and company type, it returns a list of countries/regions with trade statistics including trade count, amount, quantity, weight, and percentage.
## Running Scripts
### Environment Setup
1. **Check Python**: `python --version`
2. **Install dependencies**: `pip install -r requirements.txt`
Script directory: `scripts/*.py`
Run example: `python scripts/*.py`
**Important**: Always use direct script invocation like `python scripts/customs_company_area_list.py`. **Do NOT use** shell compound commands like `cd scripts && python customs_company_area_list.py`
### Company Area List Query (`customs_company_area_list.py`)
- **Return granularity**: One record per country/region
- **Use cases**: Browse through a company's trade countries/regions with detailed stats, analyze market presence by country
- **Examples**:
- "List trade areas for company 100001 as a supplier"
- "Get country trade details for company 100001 as a buyer"
- **Parameters**: See [Company Area List API](references/customs-company-area-list-api.md)
## API Key and Top-up
This skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:
```bash
cat ~/.upkuajing/.env
```
**Example file content**:
```
UPKUAJING_API_KEY=your_api_key_here
```
### **API Key Not Set**
First check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;
If UPKUAJING_API_KEY is not set, prompt the user to choose:
1. User has one: User provides it (manually add to ~/.upkuajing/.env file)
2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env
Wait for user selection;
### **Account Top-up**
When API response indicates insufficient balance, explain and guide user to top up:
1. Create top-up order (`auth.py --new_rec_order`)
2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;
### **Get Account Information**
Use this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`
## API Key and UpKuaJing Account
- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account
## Fees
**All API calls incur fees**, different interfaces have different billing methods.
**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)
Or use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)
### Query Billing Rules
Billed by **number of calls**, each call returns a page of area list for one company:
- Each API call incurs a fee
- **Before execution:**
1. Inform user that this query will incur a fee
2. Stop, wait for explicit user confirmation in a separate message, then execute script
### Fee Confirmation Principle
**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**
## Workflow
### Decision Guide
| User Intent | Use API |
|-------------|---------|
| "List trade areas for company 100001 as a supplier" | Company Area List Query |
| "Show country-by-country trade breakdown for company 100001" | Company Area List Query |
## Usage Examples
### Query Company Area List
**User request**: "List trade areas for company 100001 as a supplier"
```bash
python scripts/customs_company_area_list.py --params '{"companyId":100001,"companyType":1}'
```
**Query the next page**:
```bash
python scripts/customs_company_area_list.py --params '{"companyId":100001,"companyType":1,"cursor":"eyJsYXN0X2lkIjogMTAwMX0="}'
```
**Query with filters**:
```bash
python scripts/customs_company_area_list.py --params '{"companyId":100001,"companyType":1,"dateStart":1700000000000,"dateEnd":1735689599999,"hscodes":["847130"]}'
```
## Error Handling
- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file
- **Insufficient balance**: Guide user to top up
- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess
### API Documentation Reference
- Company Area List: Check [references/customs-company-area-list-api.md](references/customs-company-area-list-api.md)
## Best Practices
1. **Check API documentation**:
- **Before executing queries, must first check the corresponding API reference documentation**
- Check [references/customs-company-area-list-api.md](references/customs-company-area-list-api.md)
- Do not guess parameter names, get accurate parameter names and formats from documentation
2. **Pagination**:
- Use the `cursor` parameter from the response to fetch the next page
- If no `cursor` is returned in the response, there are no more pages
3. **Data interpretation**:
- `percentTrade` is the percentage of trade (as a decimal, e.g., 21.05 means 21.05%)
- `countryCode` is the ISO country code (e.g., "US", "KR")
4. **Cross-skill usage**:
- The company ID can be obtained from **customs-company-stats** or **upkuajing-customs-trade-company-search**
- Country codes from results can be used to filter data in **customs-company-trends** and **customs-company-partner-stats**
## Notes
- `companyType` determines the company's role (1=supplier, 2=buyer)
- Use `cursor` for pagination — it's a base64-encoded string
- This endpoint provides detailed per-country breakdown, complementing the aggregated view from **customs-company-area-stats**
- File paths use forward slashes on all platforms
- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language
- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information
- **Do not** guess parameter names, get accurate parameter names and formats from documentation
## Related Skills
Other UpKuaJing skills you might find useful:
- customs-company-area-stats — Query company trade area statistics (aggregated)
- customs-company-hscode-stats — Query company trade HS code statistics
- customs-company-hscode-list — Query company trade HS code list
- customs-company-product-list — Query company trade product list
- customs-company-port-list — Query company trade port list
- customs-company-stats — Query company basic trade statistics
- customs-company-trends — Query company trade trends (monthly breakdown)
- customs-company-partner-stats — Query company trade partner distribution
- upkuajing-customs-trade-company-search — Search customs trade companies
- upkuajing-global-company-people-search — Unified company and people search across all sources
don't have the plugin yet? install it then click "run inline in claude" again.
Query company customs trade statistics by region dimension — analyze trade volume, amount, monthly trends, and country distribution across global markets. Tr...