# 搜索 API (/docs/api/native/search)



## 基础地址 [#基础地址]

<ApiBaseDomain prefix="/search/v1" />

## 接入 [#接入]

<QuickstartTabs snippets="{&#x22;curl&#x22;:&#x22;curl https://api-origin.invalid/search/v1/search \\\n  -H \&#x22;Authorization: Bearer $PRAXIS_API_KEY\&#x22; \\\n  -H \&#x22;Content-Type: application/json\&#x22; \\\n  -d '{\&#x22;query\&#x22;:\&#x22;Who is Leo Messi?\&#x22;}'&#x22;,&#x22;python&#x22;:&#x22;import os\n\nfrom tavily import TavilyClient\n\ntavily_client = TavilyClient(\n    api_key=os.environ[\&#x22;PRAXIS_API_KEY\&#x22;],\n    api_base_url=\&#x22;https://api-origin.invalid/search/v1\&#x22;,\n)\n\nresponse = tavily_client.search(\&#x22;Who is Leo Messi?\&#x22;)\nprint(response)&#x22;,&#x22;typescript&#x22;:&#x22;import { tavily } from \&#x22;@tavily/core\&#x22;;\n\nconst tvly = tavily({\n  apiKey: process.env.PRAXIS_API_KEY,\n  apiBaseURL: \&#x22;https://api-origin.invalid/search/v1\&#x22;,\n});\n\nconst response = await tvly.search(\&#x22;Who is Leo Messi?\&#x22;);\nconsole.log(response);&#x22;}" />

## 端点 [#端点]

| 方法   | 路径                                               | 说明     | 支持   |
| ---- | ------------------------------------------------ | ------ | ---- |
| POST | [`/v1/search`](/docs/api/native/search/search)   | 搜索     | ● 支持 |
| POST | [`/v1/extract`](/docs/api/native/search/extract) | 提取网页内容 | ● 支持 |
| POST | [`/v1/crawl`](/docs/api/native/search/crawl)     | 站内爬取   | ● 支持 |
| POST | [`/v1/map`](/docs/api/native/search/map)         | 站点地图   | ● 支持 |

## 与官方的差异 [#与官方的差异]

* <a href="/docs/api/native/search/crawl">站内爬取</a>：调用前要求账户余额大于 0；按本次调用实际消耗的 credits 计费，每 credit $0.01；上游未返回用量时，按本次请求可能消耗的上限计费。
* <a href="/docs/api/native/search/map">站点地图</a>：调用前要求账户余额大于 0；按本次调用实际消耗的 credits 计费，每 credit $0.01；上游未返回用量时，按本次请求可能消耗的上限计费。

参数与字段的权威定义以 [Tavily 官方文档](https://docs.tavily.com/documentation/api-reference)为准。

错误按 Tavily 格式返回，参见[错误](/docs/api/errors)；额度与响应头参见[限流](/docs/api/rate-limits)。
