API 调用

发现端点并使用灵活的输出格式和字段过滤发起单次 API 请求

发现端点

在调用某个端点之前,使用 anysite describe 查看有哪些端点可用。它读取本地模式缓存 — 请先运行 anysite schema update(见安装)。

# List all endpoints
anysite describe

# Search by keyword
anysite describe --search "company"

# Inspect one endpoint: input parameters and output fields
anysite describe /api/linkedin/company

# Machine-readable, with examples and defaults
anysite describe /api/linkedin/company --json

完整、最新的端点目录也可以在 /docs/api 上浏览。

基本语法

anysite api <endpoint> [key=value ...] [OPTIONS]

参数以 key=value 形式传入。CLI 会根据缓存的模式自动转换类型。

示例

anysite api /api/linkedin/user user=satyanadella
anysite api /api/linkedin/company company=anthropic
anysite api /api/linkedin/search/users keywords="CTO" count=50
anysite api /api/instagram/user user=natgeo
anysite api /api/twitter/user user=elonmusk

Output Formats

通过 --format(或 -f)控制结果的显示方式:json(默认)、jsonl、csv 或 table。保存到文件时还 支持 parquet(需配合 --output)。

JSON (default)

```bash
anysite api /api/linkedin/user user=satyanadella --format json
```

CSV

```bash
anysite api /api/linkedin/search/users keywords="CTO" count=10 --format csv
```

JSONL

```bash
anysite api /api/linkedin/company/employees companies=anthropic --format jsonl
```
每行一个 JSON 对象 — 非常适合流式处理和管道传输给其他工具。

Table

```bash
anysite api /api/linkedin/user user=satyanadella --format table
```
适合在终端查看的富文本表格。

anysite api 会以所选格式直接打印 API 结果 — 它不会将输出包装在其他子命令所使用的 {ok, result, hints, meta} JSON 信封中。相关区别见 Agent Protocol。

字段过滤

包含或排除字段

# Include only these fields (dot-notation supported)
anysite api /api/linkedin/user user=satyanadella --fields "name,headline,urn.value"

# Exclude fields
anysite api /api/linkedin/user user=satyanadella --exclude "certifications,courses,honors"

字段预设

anysite api /api/linkedin/user user=satyanadella --fields-preset minimal
anysite api /api/linkedin/user user=satyanadella --fields-preset contact
anysite api /api/linkedin/user user=satyanadella --fields-preset recruiting

保存输出

# Save to file
anysite api /api/linkedin/search/users keywords="CTO" count=50 \
  --format csv --output ctos.csv

# Compact JSON (no indentation)
anysite api /api/linkedin/user user=satyanadella --compact

# Quiet mode — suppress progress messages, for clean piping
anysite api /api/linkedin/user user=satyanadella -q --format jsonl

与其他工具搭配使用管道

# API → Database
anysite api /api/linkedin/user user=satyanadella -q --format jsonl | \
  anysite db insert mydb --table profiles --stdin --auto-create

# API → File
anysite api /api/linkedin/search/users keywords="engineer" count=100 \
  -q --format csv > engineers.csv

# API → jq filtering
anysite api /api/linkedin/user user=satyanadella -q | jq '.name, .headline'

选项参考

选项 简写 描述
--format -f 输出格式:json、jsonl、csv、table、parquet(默认:json)
--fields 仅包含指定字段(逗号分隔,支持点号表示法)
--exclude 从输出中排除指定字段
--fields-preset 内置字段预设:minimal、contact、recruiting
--compact 压缩 JSON 输出
--output -o 将输出保存到文件
--quiet -q 抑制非数据输出

后续步骤

Batch Processing

通过并行和速率限制处理多个输入

Dataset Pipelines

构建具有依赖链的多数据源工作流