Literfy Open API v1 接入说明

Literfy

Literfy

2026/03/11

Literfy Open API v1 提供面向外部集成的认证接口,当前支持余额查询,以及跨多个学术数据库的论文检索,适合自动化检索、综述生成和研究工作流接入。

获取 API Key

  1. 登录 Literfy,并进入个人主页 https://literfy.ai/settings/profile
  2. 点击左侧的 API Keys
  3. 点击 Add 创建新的密钥
  4. 输入密钥名称,例如 我的科研应用
  5. 立即复制生成的密钥

认证方式

所有请求都需要在 Authorization 请求头中携带 API Key:

Authorization: Bearer <your_api_key>

速率限制

项目数值
请求频率每个 API Key 每秒 1 次

积分消耗

接口消耗积分
GET /api/open/v1/balance0
GET /api/open/v1/search每个选定数据源 2 积分

接口

余额查询

GET /api/open/v1/balance

查询当前 API Key 所属账户的剩余积分。

响应格式

{
  "remainingCredits": 128
}

示例

cURL
curl "https://literfy.ai/api/open/v1/balance" \
  -H "Authorization: Bearer sk_your_api_key"
JavaScript
const response = await fetch('https://literfy.ai/api/open/v1/balance', {
  headers: {
    Authorization: 'Bearer sk_your_api_key',
  },
});

const data = await response.json();
console.log(data.remainingCredits);
Python
import requests

response = requests.get(
    "https://literfy.ai/api/open/v1/balance",
    headers={"Authorization": "Bearer sk_your_api_key"},
)

data = response.json()
print(data["remainingCredits"])

论文搜索

GET /api/open/v1/search

跨多个学术数据库检索论文。

请求参数

参数类型必填默认值说明
topicstring-检索关键词,最多 300 个字符
google-scholarnumber-从 Google Scholar 获取的论文数量,范围 1 到 60
pubmednumber-从 PubMed 获取的论文数量,范围 1 到 100
wanfangnumber-从 Wanfang 获取的论文数量,范围 1 到 100

说明:

  • 至少指定一个数据源参数。
  • 每个数据源单次请求最多返回 100 篇论文。
  • 如果 topic 超过 300 个字符,接口会返回 INVALID_PARAMS
  • 查询多个数据源时,Literfy 会按标题自动去重。

响应格式

接口返回 Server-Sent Events(SSE)流。

事件类型

paper:单篇论文结果

{
  "paperId": "abc123",
  "source": "google-scholar | pubmed | wanfang",
  "title": "论文标题",
  "abstract": "论文摘要...",
  "authors": [{ "name": "作者姓名" }],
  "year": 2024,
  "venue": "会议或期刊",
  "url": "https://...",
  "doi": "10.1234/...",
  "citationCount": 100,
  "influentialCitationCount": 10,
  "volume": "12",
  "issue": "3",
  "pages": "123-456",
  "isOpenAccess": true,
  "pdfUrl": "https://...",
  "resourceType": "Periodical",
  "bibtex": "@article{...}",
  "venueName": "期刊或会议全称",
  "venueType": "conference | journal",
  "venueCCFRank": "A/B/C",
  "venueQuartile": "Q1/Q2/Q3/Q4",
  "venueIf": 8.6,
  "venueCASZone": 1,
  "venueCnTags": ["JCR Q1", "CAS Zone 1"]
}

不同数据源返回的字段会有差异,并非每篇论文都包含全部字段。

done:检索完成

{
  "total": 50
}

error:请求失败

{
  "error": "错误信息"
}

检索示例

cURL
curl -N "https://literfy.ai/api/open/v1/search?topic=large%20language%20models&google-scholar=50&pubmed=30&wanfang=20" \
  -H "Authorization: Bearer sk_your_api_key"
JavaScript
const response = await fetch(
  'https://literfy.ai/api/open/v1/search?topic=transformer+architecture&google-scholar=50&pubmed=30',
  {
    headers: {
      Authorization: 'Bearer sk_your_api_key',
    },
  }
);

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;

  const text = decoder.decode(value);
  const lines = text.split('\n');

  for (const line of lines) {
    if (line.startsWith('data: ')) {
      const data = JSON.parse(line.slice(6));
      console.log(data);
    }
  }
}
Python
import requests

url = "https://literfy.ai/api/open/v1/search"
params = {
    "topic": "deep learning",
    "google-scholar": 50,
    "pubmed": 30,
    "wanfang": 20
}
headers = {
    "Authorization": "Bearer sk_your_api_key"
}

response = requests.get(url, params=params, headers=headers, stream=True)

for line in response.iter_lines():
    if line:
        line = line.decode("utf-8")
        if line.startswith("data: "):
            import json
            data = json.loads(line[6:])
            print(data)

错误码

错误码HTTP 状态码说明
MISSING_API_KEY401缺少 Authorization 请求头
INVALID_API_KEY_FORMAT401Authorization 格式错误
INVALID_API_KEY401API Key 无效或已停用
RATE_LIMIT_EXCEEDED429请求过于频繁
INSUFFICIENT_CREDITS402检索所需积分不足
INVALID_PARAMS400缺少必填参数或参数不合法

可用数据源

数据源标识覆盖领域典型字段
Google Scholargoogle-scholar综合学术文献citationCountsummary
PubMedpubmed生物医学volumeissuepagesbibtex
Wanfangwanfang中文学术文献pdfUrlresourceType
Literfy Open API v1 接入说明 | Literfy 博客 | 文献综述技巧与研究策略