---
title: "Search Catalog"
method: GET
path: "/api/skill-catalog"
tags: ["skill-catalog"]
---

# Search Catalog

`GET /api/skill-catalog`

## Request

- Base URL: `https://app.thinqos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.thinqos.com/api/skill-catalog`
- Auth: none declared

Everything-by-default catalog search. Source is a filter, not required.

Shows the caller system sources + their own registered sources (TOS-1711).
The 'semantic' (Best match) sort embeds the query once - opt-in so per-search
embedding cost stays off the default keyword path (TOS-1710).

## Query parameters

- `q` string: Full-text + trigram search over the catalog
- `sources` string[]: Filter to these source ids
- `sort` string, nullable: relevance | installs | newest | name | rating | semantic
- `min_rating` number, nullable: Only entries whose average rating is at least this (TOS-3342)
- `cursor` string, nullable: Opaque pagination cursor
- `limit` integer

## Headers

- `x-impersonate-identity-id` string, nullable

## Response `200`

Successful Response

- SkillCatalogSearchOut
  - `items` SkillCatalogItemOut[]
    - `catalog_entry_id` string, uuid, required
    - `source_id` string, uuid, required
    - `source_slug` string, required
    - `source_name` string, required
    - `slug` string, required
    - `name` string, required
    - `description` string, required
    - `when_to_use` string, nullable
    - `argument_hint` string, nullable
    - `category` string, nullable
    - `version` string, nullable
    - `homepage_url` string, nullable
    - `install_count` integer, required
    - `rating_avg` number, nullable
    - `rating_count` integer
    - `capability_review` object[]
    - `installed` boolean
    - `installed_skill_id` string, uuid, nullable
    - `source_icon_url` string, nullable
  - `facets` SkillCatalogFacetOut[]
    - `source_id` string, uuid, required
    - `source_slug` string, required
    - `source_name` string, required
    - `count` integer, required
    - `source_icon_url` string, nullable
  - `total` integer, required
  - `next_cursor` string, nullable

## Other responses

- `422`: Validation Error

---

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