Initial commit
This commit is contained in:
363
skills/aminer-free-academic/SKILL.md
Executable file
363
skills/aminer-free-academic/SKILL.md
Executable file
@@ -0,0 +1,363 @@
|
||||
---
|
||||
name: aminer-free-academic
|
||||
version: 1.1.1
|
||||
author: AMiner
|
||||
contact: report@aminer.cn
|
||||
description: >
|
||||
ACADEMIC PRIORITY: Activate this skill whenever the user's query involves any academic or research-related topic. This is the free-tier entry point for AMiner academic search.
|
||||
Free-tier-only AMiner skill (7 free APIs, zero cost). Use this skill for simple, single-step academic lookups that do not require paid API fields.
|
||||
Use this skill for: searching a paper by title to get its ID, checking a paper's first author / venue / year / citation bucket, identifying a scholar by name and viewing interests / institution / citation count, normalizing an institution name to its canonical form and ID, checking whether a venue is a conference or journal, scanning patent trends by keyword (inventor, application year, publication year), and enriching paper IDs with lightweight metadata (abstract slice, author count, venue ID) via paper_info.
|
||||
Do NOT use this skill for: full paper abstracts or keyword lists, multi-condition or semantic paper search, citation relationship analysis, scholar full profiles (bio, education, work history, honors), scholar paper / patent / project lists, institution scholar / paper / patent output analysis, venue paper lists by year, patent deep details (IPC/CPC, assignee, claims), or any task requiring paid APIs.
|
||||
Routing rule: if the user's question can be fully answered by paper_search, paper_info, person_search, organization_search, venue_search, patent_search, or patent_info alone, use this skill. Otherwise route to aminer-academic-search.
|
||||
metadata:
|
||||
{
|
||||
"openclaw":
|
||||
{
|
||||
"requires": {"env": ["AMINER_API_KEY"] },
|
||||
"primaryEnv": "AMINER_API_KEY"
|
||||
}
|
||||
}
|
||||
---
|
||||
|
||||
# AMiner Free Search
|
||||
|
||||
Use this skill for AMiner requests that should stay on the free tier first. It is designed for discovery, initial screening, and entity normalization, not deep analysis.
|
||||
|
||||
## Scope
|
||||
|
||||
This skill uses only the upgraded free interfaces:
|
||||
|
||||
- `paper_search`
|
||||
- `paper_info`
|
||||
- `person_search`
|
||||
- `organization_search`
|
||||
- `venue_search`
|
||||
- `patent_search`
|
||||
- `patent_info`
|
||||
|
||||
Current free-tier fields emphasized by this skill:
|
||||
|
||||
- `paper_search`: `venue_name`, `first_author`, `n_citation_bucket`, `year`
|
||||
- `paper_info`: `abstract_slice`, `year`, `venue_id`, `author_count`
|
||||
- `organization_search`: `aliases` (top 3)
|
||||
- `venue_search`: `aliases` (top 3), `venue_type`
|
||||
- `patent_search`: `inventor_name` (first), `app_year`, `pub_year`
|
||||
- `patent_info`: `app_year`, `pub_year`
|
||||
- `person_search`: `interests`, `n_citation`, institution fields
|
||||
|
||||
## Primary Goal
|
||||
|
||||
Use free APIs to help the user answer:
|
||||
|
||||
- What is this entity?
|
||||
- Is it relevant enough to continue?
|
||||
- Which candidate should I inspect next?
|
||||
- Can I normalize this institution or venue name?
|
||||
- Is there enough value to justify upgrading to paid APIs?
|
||||
|
||||
Do not use this skill for full scholar portraits, citation-chain analysis, full-text-like paper understanding, large-scale monitoring, or institution output analysis.
|
||||
|
||||
## Mandatory Rules
|
||||
|
||||
1. Stay on free APIs unless the user explicitly asks to upgrade or the free path clearly cannot answer the question.
|
||||
2. Be explicit about free-tier limits. Say what can be answered now and what would require a paid upgrade.
|
||||
3. Use free results to narrow candidates before suggesting any paid API.
|
||||
4. If returning entities, append AMiner URLs when IDs are available:
|
||||
- Paper: `https://www.aminer.cn/pub/{paper_id}`
|
||||
- Scholar: `https://www.aminer.cn/profile/{scholar_id}`
|
||||
- Patent: `https://www.aminer.cn/patent/{patent_id}`
|
||||
- Venue: `https://www.aminer.cn/open/journal/detail/{venue_id}`
|
||||
|
||||
## Token Check (Required)
|
||||
|
||||
Before making any API call, verify that the environment variable `AMINER_API_KEY` exists. Never output the token in plain text.
|
||||
|
||||
```bash
|
||||
if [ -z "${AMINER_API_KEY+x}" ]; then
|
||||
echo "AMINER_API_KEY does not exist"
|
||||
else
|
||||
echo "AMINER_API_KEY exists"
|
||||
fi
|
||||
```
|
||||
|
||||
- If `${AMINER_API_KEY}` exists: proceed with the query.
|
||||
- If `${AMINER_API_KEY}` is not set: stop immediately and guide the user to the [AMiner Console](https://open.aminer.cn/open/board?tab=control) to generate one. For help, see the [Open Platform Documentation](https://open.aminer.cn/open/docs).
|
||||
- If the user provides `AMINER_API_KEY` inline (e.g. "My token is xxx"), accept it for the current session, but recommend setting it as an environment variable for better security.
|
||||
|
||||
## Invocation Style
|
||||
|
||||
Use direct `curl` calls by default. A Python wrapper is not required for this skill.
|
||||
|
||||
Default headers:
|
||||
|
||||
- `Authorization: ${AMINER_API_KEY}` by default
|
||||
- `Content-Type: application/json;charset=utf-8` for POST requests
|
||||
- `X-Platform: openclaw` when required by the gateway
|
||||
|
||||
## When To Use
|
||||
|
||||
Use this skill when the user asks for:
|
||||
|
||||
- free AMiner search
|
||||
- low-cost academic discovery
|
||||
- paper screening
|
||||
- scholar identification
|
||||
- institution normalization
|
||||
- venue normalization
|
||||
- patent trend scanning
|
||||
- representative results before deeper analysis
|
||||
|
||||
Trigger phrases include:
|
||||
|
||||
- “先用免费接口”
|
||||
- “不要走收费接口”
|
||||
- “先帮我筛一下”
|
||||
- “先看看值不值得深挖”
|
||||
- “找几个候选”
|
||||
- “做一个轻量版 skill”
|
||||
|
||||
## Free Workflows
|
||||
|
||||
### 1. Paper triage
|
||||
|
||||
Use when the user wants to quickly judge whether a paper is relevant.
|
||||
|
||||
Default chain:
|
||||
|
||||
`paper_search -> paper_info`
|
||||
|
||||
Return:
|
||||
|
||||
- title
|
||||
- first author
|
||||
- venue name
|
||||
- year
|
||||
- citation bucket
|
||||
- abstract slice
|
||||
- paper URL
|
||||
|
||||
This can answer:
|
||||
|
||||
- Is this probably the right paper?
|
||||
- Is it recent?
|
||||
- Is it from a recognizable venue?
|
||||
- Is it worth opening in detail?
|
||||
|
||||
### 2. Scholar identification
|
||||
|
||||
Use when the user wants to know which scholar is the right person.
|
||||
|
||||
Default chain:
|
||||
|
||||
`person_search`
|
||||
|
||||
Return:
|
||||
|
||||
- name
|
||||
- org
|
||||
- interests
|
||||
- citation count
|
||||
- scholar URL
|
||||
|
||||
This can answer:
|
||||
|
||||
- Is this the right scholar?
|
||||
- What interests best describe this person?
|
||||
- Which institution candidate is the best match?
|
||||
|
||||
### 3. Institution normalization
|
||||
|
||||
Use when the user provides an institution string or abbreviation.
|
||||
|
||||
Default chain:
|
||||
|
||||
`organization_search`
|
||||
|
||||
Return:
|
||||
|
||||
- org id
|
||||
- standard name
|
||||
- aliases (top 3)
|
||||
|
||||
This can answer:
|
||||
|
||||
- Is this institution name recognized?
|
||||
- Which canonical organization should downstream workflows use?
|
||||
|
||||
### 4. Venue normalization and type check
|
||||
|
||||
Use when the user provides a conference or journal name.
|
||||
|
||||
Default chain:
|
||||
|
||||
`venue_search`
|
||||
|
||||
Return:
|
||||
|
||||
- venue id
|
||||
- standard bilingual name
|
||||
- aliases (top 3)
|
||||
- venue type
|
||||
- venue URL
|
||||
|
||||
This can answer:
|
||||
|
||||
- Is this a conference or a journal?
|
||||
- What is the standard venue entity?
|
||||
|
||||
### 5. Patent trend scan
|
||||
|
||||
Use when the user wants a lightweight view of patents in a topic.
|
||||
|
||||
Default chain:
|
||||
|
||||
`patent_search -> patent_info` when IDs need basic enrichment
|
||||
|
||||
Return:
|
||||
|
||||
- patent title
|
||||
- first inventor
|
||||
- app year
|
||||
- pub year
|
||||
- patent number and country when `patent_info` is added
|
||||
- patent URL
|
||||
|
||||
This can answer:
|
||||
|
||||
- Is the topic active recently?
|
||||
- Who appears first in the inventor field?
|
||||
- Is there recent patent activity worth deeper review?
|
||||
|
||||
### 6. Free entity map
|
||||
|
||||
Use when the user wants a quick map of a topic across papers, scholars, venues, institutions, and patents without paying for analysis-grade APIs.
|
||||
|
||||
Suggested chain:
|
||||
|
||||
- papers: `paper_search -> paper_info`
|
||||
- scholars: `person_search`
|
||||
- institutions: `organization_search`
|
||||
- venues: `venue_search`
|
||||
- patents: `patent_search -> patent_info`
|
||||
|
||||
Return a short cross-entity summary, not a deep report.
|
||||
|
||||
## Free Skill Examples
|
||||
|
||||
### 1. Paper triage
|
||||
|
||||
```bash
|
||||
curl -X GET \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/paper/search?page=1&size=5&title=Attention%20Is%20All%20You%20Need' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw'
|
||||
```
|
||||
|
||||
Then enrich with `paper_info`:
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/paper/info' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"ids":["<PAPER_ID>"]}'
|
||||
```
|
||||
|
||||
### 2. Scholar identification
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/person/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"name":"Yann LeCun","size":5}'
|
||||
```
|
||||
|
||||
### 3. Institution normalization
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/organization/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"orgs":["MIT CSAIL"]}'
|
||||
```
|
||||
|
||||
### 4. Venue normalization and type check
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/venue/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"name":"tkde"}'
|
||||
```
|
||||
|
||||
### 5. Patent trend scan
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/patent/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"query":"quantum computing chip","page":0,"size":10}'
|
||||
```
|
||||
|
||||
## Output Pattern
|
||||
|
||||
Prefer this structure:
|
||||
|
||||
```markdown
|
||||
## Free-tier result
|
||||
|
||||
### What we can answer now
|
||||
- ...
|
||||
|
||||
### Top candidates
|
||||
- ...
|
||||
|
||||
### Suggested next step
|
||||
- Stay free: ...
|
||||
- Upgrade to paid API only if you need: ...
|
||||
```
|
||||
|
||||
## Paid Upgrade Boundary
|
||||
|
||||
Recommend upgrading only when the user needs one of these:
|
||||
|
||||
- full abstract or full paper metadata
|
||||
- multi-condition or semantic paper search
|
||||
- citation relationships
|
||||
- full scholar profile, works, patents, or projects
|
||||
- institution scholars, papers, patents, or rich profiles
|
||||
- venue paper lists by year
|
||||
- full patent details such as IPC/CPC, assignee, description
|
||||
|
||||
Suggested paid handoff:
|
||||
|
||||
- deeper paper analysis: `paper_search_pro`, `paper_detail`, `paper_relation`
|
||||
- deeper scholar analysis: `person/detail`, `person/figure`, `person/paper/relation`
|
||||
- deeper org analysis: `organization/detail`, `organization/person/relation`, `organization/paper/relation`
|
||||
- deeper venue analysis: `venue/detail`, `venue/paper/relation`
|
||||
- deeper patent analysis: `patent/detail`
|
||||
|
||||
## Product Positioning
|
||||
|
||||
This skill is intentionally positioned for:
|
||||
|
||||
- first success
|
||||
- free discovery
|
||||
- candidate narrowing
|
||||
- entity normalization
|
||||
- upgrade qualification
|
||||
|
||||
It should not replace the paid skill. It should create demand for it.
|
||||
|
||||
## Additional Reference
|
||||
|
||||
For endpoint parameters and fields, read [references/api-catalog.md](references/api-catalog.md).
|
||||
93
skills/aminer-free-academic/evals/evals.json
Executable file
93
skills/aminer-free-academic/evals/evals.json
Executable file
@@ -0,0 +1,93 @@
|
||||
{
|
||||
"skill_name": "aminer-free-academic",
|
||||
"evals": [
|
||||
{
|
||||
"id": 1,
|
||||
"prompt": "Help me quickly check whether the paper 'Attention Is All You Need' is worth a deep dive. Use only free AMiner APIs. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the paper triage workflow: paper_search to locate the paper, then paper_info to enrich with abstract slice, year, venue, and author count. Output a lightweight card with a paper URL.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called Paper Search API (paper_search) to find the paper by title",
|
||||
"Called Paper Info API (paper_info) with the returned paper ID",
|
||||
"Output includes title, first_author, venue_name, year, and n_citation_bucket",
|
||||
"Output includes abstract_slice from paper_info",
|
||||
"Output includes a paper URL in the format https://www.aminer.cn/pub/{paper_id}",
|
||||
"No paid API was called"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"prompt": "I want to identify which 'Andrew Ng' on AMiner is the Stanford professor. Use only free APIs. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the scholar identification workflow: person_search with name and optional org filter. Return candidate list with interests, org, and citation count to help the user pick the right one.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called Scholar Search API (person_search) with name 'Andrew Ng'",
|
||||
"Output includes multiple candidates with name, org, interests, and n_citation",
|
||||
"Output includes scholar URLs in the format https://www.aminer.cn/profile/{scholar_id}",
|
||||
"No paid API was called"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"prompt": "Normalize the institution name 'MIT CSAIL' using AMiner free APIs. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the institution normalization workflow: organization_search with the raw institution string. Return the canonical org name, org_id, and aliases.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called Org Search API (organization_search) with orgs=['MIT CSAIL']",
|
||||
"Output includes org_id and standardized org_name",
|
||||
"Output includes aliases list",
|
||||
"No paid API was called"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"prompt": "Help me look up recent patents about quantum computing",
|
||||
"expected_output": "Detect that the user has not provided a token; immediately stop all subsequent API calls and guide the user to obtain a token from the AMiner Console.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Clearly inform the user that a token is currently missing and AMiner API calls cannot continue",
|
||||
"No API calls were made",
|
||||
"Provide the console link https://open.aminer.cn/open/board?tab=control",
|
||||
"Prompt the user to continue after obtaining a token"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"prompt": "Is 'TKDE' a conference or a journal? Help me normalize it using free AMiner APIs. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the venue normalization workflow: venue_search with the name string. Return the standard bilingual name, venue_type, aliases, and venue URL.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called Venue Search API (venue_search) with name 'TKDE'",
|
||||
"Output includes venue_id, standard name (English and/or Chinese), and venue_type",
|
||||
"Output includes aliases list",
|
||||
"Output includes a venue URL in the format https://www.aminer.cn/open/journal/detail/{venue_id}",
|
||||
"No paid API was called"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 6,
|
||||
"prompt": "Scan recent patent activity in the field of 'autonomous driving lidar' using free APIs only. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the patent trend scan workflow: patent_search to find patents, optionally enriched by patent_info. Return patent titles, first inventor, app_year, pub_year, and patent URLs.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called Patent Search API (patent_search) with a query about autonomous driving lidar",
|
||||
"Output includes patent titles, inventor_name, app_year, and pub_year",
|
||||
"Output includes patent URLs in the format https://www.aminer.cn/patent/{patent_id}",
|
||||
"No paid API was called"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 7,
|
||||
"prompt": "Give me a quick free-tier overview of the topic 'graph neural network' — papers, scholars, institutions, and venues. My token is <YOUR_TOKEN>",
|
||||
"expected_output": "Run the free entity map workflow: combine paper_search, person_search, organization_search, and venue_search to build a lightweight cross-entity summary.",
|
||||
"files": [],
|
||||
"expectations": [
|
||||
"Called at least paper_search and person_search",
|
||||
"Output covers multiple entity types (papers, scholars, and optionally institutions/venues)",
|
||||
"Output includes AMiner URLs for returned entities",
|
||||
"Clearly states what free-tier can answer and what would require paid upgrade",
|
||||
"No paid API was called"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
286
skills/aminer-free-academic/references/api-catalog.md
Executable file
286
skills/aminer-free-academic/references/api-catalog.md
Executable file
@@ -0,0 +1,286 @@
|
||||
# AMiner Free Search API Catalog
|
||||
|
||||
**Base URL**: `https://datacenter.aminer.cn/gateway/open_platform`
|
||||
**Authentication**: All endpoints should default to `Authorization: ${AMINER_API_KEY}`. In workflow execution, also include `X-Platform: openclaw` when required by the gateway.
|
||||
**Scope**: This catalog only documents the free APIs used by `aminer-free-academic`.
|
||||
|
||||
---
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Paper APIs](#paper-apis)
|
||||
- [Scholar APIs](#scholar-apis)
|
||||
- [Institution APIs](#institution-apis)
|
||||
- [Venue APIs](#venue-apis)
|
||||
- [Patent APIs](#patent-apis)
|
||||
|
||||
---
|
||||
|
||||
## Paper APIs
|
||||
|
||||
### 1. Paper Search
|
||||
|
||||
- **URL**: `GET /api/paper/search`
|
||||
- **Price**: Free
|
||||
- **Description**: Search papers by title and return low-cost screening fields suitable for fast paper triage.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| page | number | Yes | Page number. Current online definition says it starts from `1`. |
|
||||
| size | number | No | Page size, maximum `20` |
|
||||
| title | string | Yes | Paper title |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Paper ID |
|
||||
| title | Paper title |
|
||||
| title_zh | Paper title in Chinese |
|
||||
| doi | DOI |
|
||||
| first_author | First author |
|
||||
| venue_name | Venue title |
|
||||
| n_citation_bucket | Citation bucket: `0`, `1-10`, `11-50`, `51-200`, `200-1000`, `1000-5000`, `5000+` |
|
||||
| year | Publication year |
|
||||
| total | Total count |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X GET \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/paper/search?page=1&size=10&title=Looking+at+CTR+Prediction+Again%3A+Is+Attention+All+You+Need' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. Paper Info
|
||||
|
||||
- **URL**: `POST /api/paper/info`
|
||||
- **Price**: Free
|
||||
- **Description**: Batch query paper basic cards by paper IDs. Suitable for enriching search results with lightweight metadata.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| ids | []string | Yes | Paper ID list, maximum `100` |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Paper ID |
|
||||
| title | Paper title |
|
||||
| abstract_slice | Partial abstract |
|
||||
| authors | Author array |
|
||||
| author_count | Total author count |
|
||||
| issue | Volume / issue field |
|
||||
| raw | Venue raw name |
|
||||
| venue | Venue object |
|
||||
| venue_id | Venue ID |
|
||||
| year | Publication year |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/paper/info' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"ids":["5ce2c5a5ced107d4c61c839b"]}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Scholar APIs
|
||||
|
||||
### 3. Scholar Search
|
||||
|
||||
- **URL**: `POST /api/person/search`
|
||||
- **Price**: Free
|
||||
- **Description**: Search scholar candidates by name and optional institution condition.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| name | string | No | Scholar name |
|
||||
| offset | number | No | Starting position (fixed at 0; pagination not supported) |
|
||||
| org | string | No | Institution name |
|
||||
| size | number | No | Number of results, maximum `10` |
|
||||
| org_id | []string | No | Institution entity ID list |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Scholar ID |
|
||||
| interests | Research interests |
|
||||
| n_citation | Citation count |
|
||||
| name | Name |
|
||||
| name_zh | Chinese name |
|
||||
| org | Institution in English |
|
||||
| org_id | Institution ID |
|
||||
| org_zh | Institution in Chinese |
|
||||
| total | Total count |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/person/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"name":"王曙","offset":0,"org":"Shanghai Jiaotong","size":10}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Institution APIs
|
||||
|
||||
### 4. Org Search
|
||||
|
||||
- **URL**: `POST /api/organization/search`
|
||||
- **Price**: Free
|
||||
- **Description**: Search institution IDs and standard names from institution keywords.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| orgs | []string | No | Institution names |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| aliases | Alias list, partial and typically top 3 |
|
||||
| org_id | Institution ID |
|
||||
| org_name | Institution name |
|
||||
| total | Total count |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/organization/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"orgs":["清华大学"]}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Venue APIs
|
||||
|
||||
### 5. Venue Search
|
||||
|
||||
- **URL**: `POST /api/venue/search`
|
||||
- **Price**: Free
|
||||
- **Description**: Search venue IDs and standard names by venue keyword, including aliases and venue type.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| name | string | No | Venue name |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Venue ID |
|
||||
| name_en | Venue English name |
|
||||
| name_zh | Venue Chinese name |
|
||||
| aliases | Alias list, partial and typically top 3 |
|
||||
| venue_type | Venue type: `journal` or `conference` |
|
||||
| total | Total count |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/venue/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"name":"tkde"}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Patent APIs
|
||||
|
||||
### 6. Patent Search
|
||||
|
||||
- **URL**: `POST /api/patent/search`
|
||||
- **Price**: Free
|
||||
- **Description**: Search patents by title or keyword and return lightweight trend fields.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| query | string | Yes | Query text such as patent title or keywords |
|
||||
| page | number | Yes | Page number |
|
||||
| size | number | Yes | Page size |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Patent ID |
|
||||
| title | Patent title in English |
|
||||
| title_zh | Patent title in Chinese |
|
||||
| inventor_name | First inventor name |
|
||||
| app_year | Application year |
|
||||
| pub_year | Publication year |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/patent/search' \
|
||||
-H 'Content-Type: application/json;charset=utf-8' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw' \
|
||||
-d '{"page":0,"query":"Si02","size":20}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 7. Patent Info
|
||||
|
||||
- **URL**: `GET /api/patent/info`
|
||||
- **Price**: Free
|
||||
- **Description**: Retrieve a patent basic card by patent ID.
|
||||
|
||||
**Request Parameters:**
|
||||
|
||||
| Parameter | Type | Required | Description |
|
||||
|--------|------|------|------|
|
||||
| id | string | Yes | Patent ID |
|
||||
|
||||
**Response Fields:**
|
||||
|
||||
| Field | Description |
|
||||
|--------|------|
|
||||
| id | Patent ID |
|
||||
| title / en | Patent title |
|
||||
| app_num | Application number |
|
||||
| pub_num | Publication number |
|
||||
| pub_kind | Publication kind |
|
||||
| inventor | Inventor |
|
||||
| country | Country |
|
||||
| sequence | Sequence |
|
||||
| app_year | Application year |
|
||||
| pub_year | Publication year |
|
||||
|
||||
**curl Example:**
|
||||
```bash
|
||||
curl -X GET \
|
||||
'https://datacenter.aminer.cn/gateway/open_platform/api/patent/info?id=<PATENT_ID>' \
|
||||
-H "Authorization: ${AMINER_API_KEY}" \
|
||||
-H 'X-Platform: openclaw'
|
||||
```
|
||||
Reference in New Issue
Block a user