Skip to content

Keywords API

Base path: /api/v1/projects/{project_id}/keywords

Endpoints

MethodEndpointDescription
GET/projects/{id}/keywordsList keywords
POST/projects/{id}/keywordsCreate keyword
POST/projects/{id}/keywords/bulkBulk create
PUT/projects/{id}/keywords/{kw_id}Update keyword
DELETE/projects/{id}/keywords/{kw_id}Delete keyword
POST/projects/{id}/keywords/expandLLM expand
GET/projects/{id}/keywords/search-formulaGenerate search formula

Query Parameters (List)

  • level — Filter by level (1, 2, or 3)

Keyword Schema

json
{
  "term": "关键词",
  "term_en": "keyword",
  "level": 1,
  "parent_id": null,
  "synonyms": [],
  "category": ""
}

Bulk Create

POST /projects/{id}/keywords/bulk — Create multiple keywords at once.

Request body: Array of KeywordCreate objects.

Response: { created } — Number of keywords created.

Expand Request

json
{
  "seed_terms": ["transformer", "attention"],
  "max_results": 10,
  "language": "en"
}

Expand Response

Returns expanded_terms as a list of objects:

json
{
  "expanded_terms": [
    {"term": "self-attention", "term_zh": "自注意力", "relation": "synonym"},
    {"term": "BERT", "term_zh": "", "relation": "abbreviation"}
  ],
  "source": "llm:openai"
}
  • term — Expanded term (English)
  • term_zh — Chinese translation (optional)
  • relationsynonym, abbreviation, or related

Search Formula

GET /projects/{id}/keywords/search-formula?database=wos — Generate a boolean search formula from project keywords for a specific database.

Query parameters:

  • database — Target database: wos, scopus, or pubmed (default: wos)

Response: { formula, database, keyword_count }

Released under the MIT License.