---
title: "Public Concierge demo — no API key, IP rate-limited"
method: POST
path: "/v1/agent/concierge-public"
tags: ["public"]
---

# Public Concierge demo — no API key, IP rate-limited

`POST /v1/agent/concierge-public`

## Request

- Base URL: `https://api.travelminds.ai`
- URL: `https://api.travelminds.ai/v1/agent/concierge-public`
- Auth: none declared

Lower-friction Concierge path for the marketing playground at travelminds.ai/app/console and /demo/. No authentication required. Rate-limited at 10 calls per IP per hour. Queries are logged for moderation review and may be filtered. Use /v1/agent/concierge with an API key for production traffic. Pass ?stream=1 (or Accept: text/event-stream) to receive SSE events: `started`, `tool_call`, `tool_result`, `thinking` (2s keepalive), and a final `done` event carrying the full ConciergeOut JSON.

## Response `200`

Successful Response

- ConciergeOut
  - `version` string
  - `query` string, required
  - `language_detected` string, nullable
  - `summary` string
  - `itinerary` ItineraryDay[]
    - `day` integer, required
    - `city` CityRef
      - `id` string, nullable
      - `name` string, required
      - `iso_alpha2` string, nullable
      - `state_code` string, nullable
    - `title` string, nullable
    - `anchor` AnchorExperience: Best-in-class itinerary doctrine: each day is built around ONE titled hero moment with explicit significance. Optional — populated when the day has a clear anchor; absent for pure transfer/leisure days.
      - `name` string, required
      - `why_it_matters` string, nullable
      - `best_time` string, nullable
    - `pace` string, nullable
    - `morning` ItineraryItem[]
      - `item` string, required
      - `category` string, nullable
      - `duration_min` integer, nullable
      - `timings` string, nullable
      - `fee` string, nullable
      - `citation` string, nullable
    - `afternoon` ItineraryItem[]
      - `item` string, required
      - `category` string, nullable
      - `duration_min` integer, nullable
      - `timings` string, nullable
      - `fee` string, nullable
      - `citation` string, nullable
    - `evening` ItineraryItem[]
      - `item` string, required
      - `category` string, nullable
      - `duration_min` integer, nullable
      - `timings` string, nullable
      - `fee` string, nullable
      - `citation` string, nullable
    - `items` ItineraryItem[]
      - `item` string, required
      - `category` string, nullable
      - `duration_min` integer, nullable
      - `timings` string, nullable
      - `fee` string, nullable
      - `citation` string, nullable
    - `stay` object, nullable
    - `transit_in` object, nullable
  - `restaurants_recommended` RestaurantRecommended[]
    - `city_id` string, nullable
    - `name` string, required
    - `michelin_tier` string, nullable
    - `citation` string, nullable
  - `heritage_highlights` HeritageHighlight[]
    - `name` string, required
    - `type` string, nullable
    - `citation` string, nullable
  - `coverage_notes` string, nullable
  - `citations` CitationsBlock
    - `tool_calls` object[]
    - `data_sources` string[]
    - `attribution_lines` string[]
    - `ground_truth_refs` string[]
  - `partial` boolean
  - `degraded_reason` string, nullable
  - `tokens_used` TokensUsed
    - `input` integer
    - `output` integer
    - `cache_read` integer
    - `cache_create` integer
  - `tool_calls_made` integer
  - `elapsed_ms` integer
  - `layout_hint` string

---

[API](https://skmtc.dev/travelminds/apis/travelmindsai-api-gateway.md) · [All operations](https://skmtc.dev/travelminds/apis/travelmindsai-api-gateway/llms.txt) · [OpenAPI document](https://skmtc.dev/travelminds/apis/travelmindsai-api-gateway/revisions/d05c8634e340?raw)
