# 抓取 URL 的干净、结构化内容。

**API:** Data API

**Endpoint:** `POST /v1/beta/byteplus/fetch`

**Tags:** BytePlus

抓取单个 URL，返回干净、结构化的页面内容——标题、正文和发布时间。`Url` 为必填项。响应封装了 `ResponseMetadata.RequestId` 和包含解析内容的 `Result` 对象。用于提取已有 URL 的完整页面内容，通常与 `post_byteplus_web_search` 的结果配合使用。

### 计费参考

- 计量方式：按成功请求的固定成本计费。
- 参考请求估算：0.0008 美元。
- 参考客户倍率：1.0。不得对已结算的客户金额再次应用。

仅供参考的元数据，不是账户报价、保证价格或消费上限。资源额度不同于 Felo 额度。最终扣费以 Felo 计费记录为准。

## Base URL

- `https://openapi.felo.ai`

## Authentication

- `FeloBearerAuth` (http bearer, bearer format Felo API Key)
- `FeloApiKey` (apiKey in header `X-API-Key`)

## Request body

Required: **yes**

### application/json

Schema:

```json
{
  "type": "object",
  "properties": {
    "Url": {
      "type": "string",
      "description": "要抓取的 URL。必填。",
      "example": "https://example.com"
    }
  },
  "required": [
    "Url"
  ]
}
```

Example:

```json
{
  "Url": "https://example.com"
}
```

## Responses

### 200 — 抓取成功完成。`Result` 包含结构化页面内容。

Headers:
- `X-Request-Id` (string) — 联系 Felo 支持时需提供的请求标识符。

**application/json**

Schema: object

```json
{
  "type": "object",
  "properties": {
    "ResponseMetadata": {
      "type": "object",
      "description": "上游请求元数据。",
      "properties": {
        "RequestId": {
          "type": "string",
          "description": "此请求的唯一标识符。"
        },
        "Action": {
          "type": "string"
        },
        "Version": {
          "type": "string"
        },
        "Service": {
          "type": "string"
        },
        "Region": {
          "type": "string"
        }
      }
    },
    "Result": {
      "type": "object",
      "description": "抓取结果负载。",
      "properties": {
        "Data": {
          "type": "object",
          "description": "结构化页面内容。",
          "properties": {
            "StatusCode": {
              "type": "integer",
              "description": "所抓取页面的 HTTP 状态码。"
            },
            "Url": {
              "type": "string",
              "description": "抓取的 URL。"
            },
            "Title": {
              "type": "string",
              "description": "页面标题。"
            },
            "PublishTime": {
              "type": "integer",
              "description": "检测到的发布时间，Unix 秒（未知时为 0）。"
            },
            "ContentText": {
              "type": "string",
              "description": "从页面提取的干净正文文本。"
            }
          }
        },
        "LogId": {
          "type": "string",
          "description": "上游日志 id（等于 ResponseMetadata.RequestId）。"
        }
      }
    }
  }
}
```

Example:

```json
{
  "ResponseMetadata": {
    "RequestId": "20260904155514D7EA140BFD77348BC3FC",
    "Action": "",
    "Version": "",
    "Service": "",
    "Region": ""
  },
  "Result": {
    "Data": {
      "StatusCode": 200,
      "Url": "https://example.com",
      "Title": "Example Domain",
      "PublishTime": 0,
      "ContentText": "This domain is for use in documentation examples without needing permission. Avoid use in operations.\nLearn more"
    },
    "LogId": "20260904155514D7EA140BFD77348BC3FC"
  }
}
```

### 400 — 无法处理该请求。请检查请求参数。

### 401 — 需要有效的 Felo API 密钥。

### 402 — 由于未满足计费要求，请求无法继续。

### 403 — 该账户无权执行此操作。

### 429 — 已达到请求或支出限额。

### 502 — 服务无法完成该请求。

### 503 — API 或计费服务暂时不可用。

### 504 — 服务在处理请求时超时。

### default — 错误响应；上游透传响应可能采用提供方格式

**application/json**

Schema:

```json
{}
```
