Customs Analysis HS Code Search
Search HS codes from customs data using the UpKuaJing Open Platform API.
Overview
This skill allows you to search for HS (Harmonized System) codes by providing a product name and HS code keywords. It returns a list of matching HS codes that can be used in other analysis report skills.
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_analysis_hscode_search.py. Do NOT use shell compound commands like cd scripts && python customs_analysis_hscode_search.py
HS Code Search (customs_analysis_hscode_search.py)
- Return granularity: One or more matching HS codes
- Use cases: Find HS codes by product name, look up customs classification codes, search tariff codes
- Examples:
- "Search HS codes for milk powder"
- "Find HS codes starting with 0402"
- Parameters: See HS Code Search 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 one page of HS code search results:
- 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 | |-------------|---------| | "Search HS codes for milk powder" | HS Code Search | | "Find HS codes starting with 0402" | HS Code Search | | "Look up tariff codes for a product" | HS Code Search |
Usage Examples
Search HS Codes
User request: "Search HS codes for milk powder with prefix 0402"
python scripts/customs_analysis_hscode_search.py --params '{"product":"milk powder","hscode":"0402"}'
Query the next page:
python scripts/customs_analysis_hscode_search.py --params '{"product":"milk powder","hscode":"0402","cursor":"eyJpZCI6MX0="}'
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
- HS Code Search: Check references/customs-analysis-hscode-search-api.md
Best Practices
-
Check API documentation:
- Before executing queries, must first check the corresponding API reference documentation
- Check references/customs-analysis-hscode-search-api.md
- Do not guess parameter names, get accurate parameter names and formats from documentation
-
Search parameters:
- Both
productandhscodeare required - Provide both product name and HS code prefix for best results
- Both
-
Cross-skill usage:
- Use found HS codes with customs-analysis-hscode-detail to get code descriptions
- Use found HS codes with customs-analysis-trends or customs-analysis-area for detailed analysis
Notes
productandhscodeare both required parameters- The response
listcontains matching HS code strings - 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-analysis-hscode-detail — Query HS code detail descriptions
- customs-analysis-trends — Query import/export trade trends by HS code
- customs-analysis-area — Query trade area distribution by HS code
- customs-analysis-trade-percent — Query trade percentage by company
- customs-overview-summary — Query trade overview summary (aggregated)
- customs-overview-trend — Query import/export trade trends by month
- customs-company-hscode-list — Query company HS code list
- customs-company-product-list — Query company product list
- customs-company-stats — Query company basic trade statistics
- upkuajing-customs-trade-company-search — Search customs trade companies
Scan to join WeChat group