---
title: "Full-text search across posts, blogs, and destinations"
method: GET
path: "/search"
---

# Full-text search across posts, blogs, and destinations

`GET /search`

## Request

- Base URL: `https://api.vakantio.de`
- URL: `https://api.vakantio.de/search`
- Auth: none required

Free-text search across published posts, blogs, and destinations. No authentication required. Returns grouped results; post items include their public URL path (fullPath).

## Query parameters

- `q` string, required

## Response `200`

Grouped search results

- object
  - `posts` object
    - `items` PostSummary[]
      - `_id` string
      - `title` string
      - `preview` string
      - `tags` string[]
      - `topics` string[]
      - `path` string: URL slug (assigned at first publish)
      - `fullPath` string: Public URL path: /<blogPath>/<slug>
      - `blogName` string
      - `likeCount` number
      - `commentCount` number
      - `datePublished` number: Unix ms
      - `dateTraveled` number: Unix ms
  - `blogs` object
    - `items` object[]
  - `destinations` object
    - `items` object[]

## Other responses

- `4XX`: Client error — JSON body with a stable `error` code (e.g. not_found, not_authenticated, request_failed) and an optional `hint`.
- `5XX`: Server error — JSON body with `error: "server_error"`.

---

[API](https://skmtc.dev/vakantio/apis/vakantio-api.md) · [All operations](https://skmtc.dev/vakantio/apis/vakantio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/vakantio/apis/vakantio-api/revisions/2e1306807326?raw)
