# Knowledgebase endpoints (Client API: account)

> 5 FeatherPanel Client API: account endpoints from user/knowledgebase.php: methods, paths, auth, permissions, rate limits, parameters and responses.

Source: https://featherpanel.com/docs/api/reference/user/knowledgebase/

Defined in [`backend/app/routes/user/knowledgebase.php`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php). Authentication used here: **Signed-in user**. Read [Authentication](https://featherpanel.com/docs/api/authentication/) for how to send credentials and [Rate limits and errors](https://featherpanel.com/docs/api/rate-limits-and-errors/) for the response envelope.

Paths, methods, permissions and rate limits come from the route file. Summaries, parameters and response codes come from the OpenAPI annotations on the controllers; endpoints without annotations show only what the route file declares.

## Endpoints

### GET `/api/user/knowledgebase/categories`

- Auth: Signed-in user
- Default rate limit: 60 / minute (`user-knowledgebase`)
- Route name: `user-knowledgebase-categories`
- Controller: [`KnowledgebaseController::categoriesIndex`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/KnowledgebaseController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php#L26)

```bash
curl -X GET "$PANEL_URL/api/user/knowledgebase/categories" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Plugin events: [`featherpanel:user:knowledgebase:categories:retrieved`](https://featherpanel.com/docs/plugins/events/knowledgebase/#user-knowledgebase-categories-retrieved)

### GET `/api/user/knowledgebase/categories/{id}`

- Auth: Signed-in user
- Default rate limit: 60 / minute (`user-knowledgebase`)
- Route name: `user-knowledgebase-categories-show`
- Controller: [`KnowledgebaseController::categoriesShow`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/KnowledgebaseController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php#L39)

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | \- | yes |  |

```bash
curl -X GET "$PANEL_URL/api/user/knowledgebase/categories/$ID" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Plugin events: [`featherpanel:user:knowledgebase:category:retrieved`](https://featherpanel.com/docs/plugins/events/knowledgebase/#user-knowledgebase-category-retrieved)

### GET `/api/user/knowledgebase/articles`

- Auth: Signed-in user
- Default rate limit: 60 / minute (`user-knowledgebase`)
- Route name: `user-knowledgebase-articles`
- Controller: [`KnowledgebaseController::articlesIndex`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/KnowledgebaseController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php#L57)

```bash
curl -X GET "$PANEL_URL/api/user/knowledgebase/articles" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Plugin events: [`featherpanel:user:knowledgebase:articles:retrieved`](https://featherpanel.com/docs/plugins/events/knowledgebase/#user-knowledgebase-articles-retrieved)

### GET `/api/user/knowledgebase/articles/{id}`

- Auth: Signed-in user
- Default rate limit: 60 / minute (`user-knowledgebase`)
- Route name: `user-knowledgebase-articles-show`
- Controller: [`KnowledgebaseController::articlesShow`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/KnowledgebaseController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php#L70)

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | \- | yes |  |

```bash
curl -X GET "$PANEL_URL/api/user/knowledgebase/articles/$ID" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Plugin events: [`featherpanel:user:knowledgebase:article:retrieved`](https://featherpanel.com/docs/plugins/events/knowledgebase/#user-knowledgebase-article-retrieved)

### GET `/api/user/knowledgebase/categories/{id}/articles`

- Auth: Signed-in user
- Default rate limit: 60 / minute (`user-knowledgebase`)
- Route name: `user-knowledgebase-categories-articles`
- Controller: [`KnowledgebaseController::categoryArticles`](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/Controllers/User/KnowledgebaseController.php)
- [route source](https://github.com/MythicalLTD/FeatherPanel/blob/15b94e9fc9df233123706b47c42728b81e48cb3d/backend/app/routes/user/knowledgebase.php#L88)

| Parameter | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | \- | yes |  |

```bash
curl -X GET "$PANEL_URL/api/user/knowledgebase/categories/$ID/articles" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"
```

Plugin events: [`featherpanel:user:knowledgebase:category:articles:retrieved`](https://featherpanel.com/docs/plugins/events/knowledgebase/#user-knowledgebase-category-articles-retrieved)
