---
title: "Search brand library"
method: GET
path: "/open/v1/brand-library/search"
tags: ["Brand Library"]
---

# Search brand library

`GET /open/v1/brand-library/search`

Search Atria's global brand library by name. Results span all ingested sources (Meta and TikTok ad libraries), ordered by ad volume (`ad_num`) descending.

Each result's `id` carries an origin prefix: `m*` for Meta-origin brands and `t*` for TikTok-origin. Use that `id` directly when calling `GET /open/v1/brand-library/{brand_id}` or `GET /open/v1/brand-library/{brand_id}/ads`.

Returns: `code=0` success; `code=40001` invalid query parameters.

## Query parameters

- `keyword` string — Brand name keyword. Case-insensitive substring match.
- `platform` OpenBrandSearchPlatform[] — Restrict by source ad library. Repeatable. Allowed values: `meta_ad_library`, `tiktok_ad_library` — these match the `ad_library` field on each returned brand.
- `industry` string[] — Filter by industry tag. Repeatable. Free-form tags from the brand's `industries` (e.g. `apparel`, `sportswear`, `health/beauty`).
- `page` integer — 1-based page number (default 1).
- `page_size` integer — Items per page (1-100, default 20).

## Response `200`

Successful Response

- OpenLibraryBrandListResponse — Envelope for all open API responses. code=0 means success.
  - `code` integer
  - `message` string
  - `data` OpenLibraryBrandListData — Page-based pagination wrapper (boards, brands).
    - `items` OpenLibraryBrand[]
      - `id` string, required — Atria-prefixed stable brand identifier. Format `m*` (Meta) or `t*` (TikTok). Use this on brand-detail / brand-ads paths.
      - `name` string — Brand display name.
      - `avatar_url` string — Brand logo URL.
      - `website_url` string — Brand homepage URL if known.
      - `description` string — Brand mission / about-us blurb scraped from the platform.
      - `industries` string[] — Industry tags inferred from the brand's catalog presence.
      - `ad_num` integer — Approximate count of ads from this brand in Atria's library.
      - `source_library` string — Source library the brand was indexed from: `meta_ad_library` or `tiktok_ad_library`.
      - `status` string — Catalog ingestion state: `creating` (just registered), `scraping` (fetch in progress), `scraped` (data complete). Only `scraped` brands return useful detail / ad data.
    - `total` integer
    - `page` integer
    - `page_size` integer — Number of items actually returned on this page (== len(items)). On the last page or when the matching set is smaller than the requested page size, this is less than what the caller asked for.

## Other responses

- `400` — Invalid request — a query parameter, path parameter, or body field failed validation.

---

[API](https://skmtc.net/tryatria/apis/atria-open-api.md) · [All operations](https://skmtc.net/tryatria/apis/atria-open-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tryatria/atria-open-api/revisions/548d57b611ea/schema)
