Customs Company Trade Trends
Query company monthly trade trends from customs data using the UpKuaJing Open Platform API.
Overview
This skill provides access to company monthly trade trends from UpKuaJing's customs database. Given a company ID, company type, and optional filters (date range, products, HS codes, countries, partners, port), it returns the monthly breakdown of trade count, quantity, weight, and amount.
Running Scripts
Environment Setup
- Check Python:
python --version - 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_trends.py. Do NOT use shell compound commands like cd scripts && python customs_company_trends.py
Company Trade Trends Query (customs_company_trends.py)
- Return granularity: One record per month
- Use cases: View a company's trade trends over time, analyze seasonal patterns
- Examples:
- "Get monthly trade trends for company 100001 as a supplier"
- "Query trade trends for company 100001 as a buyer with date range"
- Parameters: See Company Trade Trends API
API Key and Top-up
This skill requires an API key. The API key is stored in the ~/.upkuajing/.env file:
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:
- User has one: User provides it (manually add to ~/.upkuajing/.env file)
- 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:
- Create top-up order (
auth.py --new_rec_order) - 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, then bind account
Fees
All 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)
Query Billing Rules
Billed by number of calls, each call returns trade trends for one company:
- Each API call incurs a fee
- Before execution:
- Inform user that this query will incur a fee
- 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 | |-------------|---------| | "Get monthly trade trends for company 100001 as a supplier" | Company Trade Trends Query | | "Show trade trends of company 100001 from 2024 to 2025" | Company Trade Trends Query |
Usage Examples
Query Company Trade Trends
User request: "Get monthly trade trends for company 100001 as a supplier"
python scripts/customs_company_trends.py --params '{"companyId":100001,"companyType":1}'
Query with date range and filters:
python scripts/customs_company_trends.py --params '{"companyId":100001,"companyType":1,"dateStart":1700000000000,"dateEnd":1735689599999,"products":["LAPTOP","MOBILE PHONE"],"countryCodes":["US","KR"]}'
Error Handling
- API key invalid/non-existent: Check
UPKUAJING_API_KEYin~/.upkuajing/.envfile - 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 Trade Trends: Check references/customs-company-trends-api.md
Best Practices
-
Check API documentation:
- Before executing queries, must first check the corresponding API reference documentation
- Check references/customs-company-trends-api.md
- Do not guess parameter names, get accurate parameter names and formats from documentation
-
Filtering:
- Use
dateStartanddateEnd(millisecond timestamps) to narrow down the time range - Use ISO country codes (e.g., "US", "KR") for country filters
- Use HS codes for product filtering when possible (more precise than product names)
- Use
-
Cross-skill usage:
- The company ID can be obtained from customs-company-stats or upkuajing-customs-trade-company-search
Notes
companyTypedetermines the company's role (1=supplier, 2=buyer)monthTextprovides a human-readable month string (e.g., "2024-01")monthis a millisecond timestamp- 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_infoto 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-stats — Query company basic trade statistics
- 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
- global-company-search — Search companies from the global company database
- global-company-person-search — Search people from the global company database
- global-company-shareholder — Query shareholder list from the global company database
- global-company-employee — Query employee list from the global company database
- upkuajing-contact-info-validity-check — Check contact info validity
- phone-validity-check — Check phone number validity
Scan to join WeChat group