---
title: "Search Old Navy, Gap, Banana Republic, or Athleta products"
method: GET
path: "/oldnavy/search"
tags: ["Old Navy"]
---

# Search Old Navy, Gap, Banana Republic, or Athleta products

`GET /oldnavy/search`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/oldnavy/search`
- Auth: API key in header `x-api-key`

Searches product listings across Old Navy, Gap, Banana Republic, and Athleta -- select the storefront with the brand parameter (`on` for Old Navy, `gap` for Gap, `br` for Banana Republic, `at` for Athleta; defaults to `on`). Returns product summaries with pricing, review scores, and every purchasable color variant. This search is best-effort relevance, not a guaranteed keyword match: for an obscure or nonsense keyword the upstream search index falls back to its own recommended results instead of returning an empty list, and there is currently no reliable signal in the response to distinguish a true keyword match from that fallback behavior.

## Query parameters

- `keyword` string, required
- `brand` 'on' | 'gap' | 'br' | 'at'
- `page` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- OldnavySearchResponseDoc
  - `code` integer
  - `data` OldnavySearchResponse
    - `brand` string
    - `count` integer
    - `facets` OldnavyFacet[]
      - `is_range` boolean
      - `label` string
      - `name` string
      - `options` OldnavyFacetOption[]
        - `count` integer
        - `label` string
        - `value` string
      - `range_max` number
      - `range_min` number
      - `type` string
    - `fetched_at` string
    - `keyword` string
    - `page` integer
    - `page_size` integer
    - `products` OldnavyProductSummary[]
      - `colors` OldnavyColorSummary[]
        - `id` string
        - `image_url` string
        - `name` string
        - `percentage_off` integer
        - `price` number
        - `regular_price` number
        - `short_description` string
      - `id` string
      - `name` string
      - `price_max` number
      - `price_min` number
      - `review_count` integer
      - `review_score` number
      - `sale_price_max` number
      - `sale_price_min` number
      - `thumbnail_url` string
      - `url` string
      - `web_product_type` string
    - `source_url` string
    - `total_pages` integer
    - `total_products` integer
  - `msg` string

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `429`: Too Many Requests
- `503`: Service Unavailable

---

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