> ## Agent Instructions
>
> Base URL: https://api.anysite.io
> Authentication: send the `access-token` header. Do NOT use `Authorization: Bearer`.
> Full endpoint catalog: https://app.anysite.io/docs
# API 调用

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

## 发现端点

在调用某个端点之前，使用 `anysite describe` 查看有哪些端点可用。它读取本地模式缓存 — 请先运行
`anysite schema update`（见[安装](/docs/cli/installation?lang=zh#update-schema-cache)）。

```bash
# 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](/docs/api?lang=zh) 上浏览。

## 基本语法

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

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

## 示例

```bash LinkedIn User
anysite api /api/linkedin/user user=satyanadella
```

```bash LinkedIn Company
anysite api /api/linkedin/company company=anthropic
```

```bash LinkedIn Search
anysite api /api/linkedin/search/users keywords="CTO" count=50
```

```bash Instagram User
anysite api /api/instagram/user user=natgeo
```

```bash Twitter User
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](/docs/cli/agent-protocol?lang=zh)。

## 字段过滤

### 包含或排除字段

```bash
# 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"
```

### 字段预设

```bash
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
```

## 保存输出

```bash
# 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
```

## 与其他工具搭配使用管道

```bash
# 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

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