# Search IELTS knowledge articles

Search published IELTS Buddy prep guides by keyword or tag. Results are paginated and include a stable prep_guide contentRef. This is the prep-guide module's only search interface.

- Capability ID: `prep.search_guides`
- Operation: `ielts_prep_search_guides`
- Category: 备考内容
- Endpoint: `POST /api/v1/agent/capabilities/ielts_prep_search_guides`
- Authentication: 无需认证
- Required scopes: prep:read
- Side effect: read
- Human documentation: https://ieltsbuddy.igopx.cn/developers/api/ielts_prep_search_guides

## Request parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `limit` | number | 否 | Result limit, 1-8. |
| `offset` | number | 否 | Pagination offset. |
| `query` | string | 否 | Keyword or title. |
| `tag` | string | 否 | Optional published guide tag or category. |

## Request example

```bash
curl -X POST \
  'https://work.ieltsbuddy.igopx.cn/api/v1/agent/capabilities/ielts_prep_search_guides' \
  -H 'Content-Type: application/json' \
  --data '{"limit":8,"offset":0,"query":"","tag":""}'
```

## Request schema

```json
{
  "type": "object",
  "properties": {
    "limit": {
      "default": 8,
      "description": "Result limit, 1-8.",
      "type": "integer",
      "minimum": 1,
      "maximum": 8
    },
    "offset": {
      "default": 0,
      "description": "Pagination offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "query": {
      "default": "",
      "description": "Keyword or title.",
      "type": "string"
    },
    "tag": {
      "default": "",
      "description": "Optional published guide tag or category.",
      "type": "string"
    }
  },
  "required": [
    "limit",
    "offset",
    "query",
    "tag"
  ],
  "additionalProperties": false
}
```

## Response envelope

```json
{
  "code": 0,
  "data": {},
  "message": "ok"
}
```

## Errors

| HTTP | Code | Meaning |
| --- | --- | --- |
| 400 | `40001` | 请求参数不符合接口契约 |
| 404 | `40401` | 接口或目标资源不存在 |
