사용 방법
- 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
- 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
- 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/crawlora-org/crawlora-skills --skill ulta-research시작 전 확인
- 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
- 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.
Ulta Beauty research
Browse and search Ulta Beauty's catalog and pull product detail, shade variants, questions, reviews, and nearby store locations — all as normalized JSON from the Crawlora API, with no HTML scraping.
When to use this skill
- "Find [product] on Ulta" or "what does Ulta sell for [need]?"
- "Browse Ulta's [department] category" / "filter by [brand/benefit]."
- "What do customers ask and say about this Ulta product before I
recommend it?" (Q&A + reviews)
- "Find shade/sku options for this Ulta product."
- "Is there an Ulta store near [zip/city]?"
Setup (one-time)
- Get a free Crawlora API key (2,000 credits/mo, no card) at https://crawlora.net.
- Set
CRAWLORA_API_KEYin the environment before running the helper. - The helper reads
CRAWLORA_API_KEYfrom the environment and sends requests tohttps://api.crawlora.net/api/v1. Missing/invalid key →401.
How it works
- Discover categories —
/ulta/categorieslists the storefront
navigation (department, group, and a category value ready to pass to /ulta/category).
- Browse or search —
/ulta/category(category) paginates a
category's product grid and returns guided-navigation filter facet codes to narrow it; /ulta/search (query) does keyword search instead. /ulta/suggest (query) returns typeahead suggestions plus each suggestion's top product matches, useful for finding query ideas or a featured best match for a partial term.
- Detail —
/ulta/product/{productId}fetches full product detail:
name, brand, description, pricing, rating, and every purchasable color/shade variant; pass sku to pin a specific shade.
- Q&A and reviews —
/ulta/product/questionsand
/ulta/product/reviews (both keyed by product_id) pull paginated customer questions/answers and written reviews plus the rating summary.
- Nearby stores —
/ulta/storesresolves asearchstring (zip,
city, address) or explicit lat/lng to nearby physical Ulta locations, with hours, services, and phone.
Full endpoint list, methods, and params: `reference/endpoints.md`.
Calling the API
# Search Ulta by keyword:
scripts/crawlora.sh /ulta/search query="vitamin c serum" | jq '.'
# Browse a category, filtered:
scripts/crawlora.sh /ulta/category category="shop/skin-care/serums" filter="BENEFIT--BRIGHTENING" | jq '.'
# Product detail (path param) for a specific shade:
scripts/crawlora.sh /ulta/product/pimprod2020260 sku=2540468 | jq '.data'
# Nearby stores:
scripts/crawlora.sh /ulta/stores search="60614" | jq '.'Use scripts/crawlora.sh for all requests; it keeps the API key out of command-line arguments.
Endpoint reference
See `reference/endpoints.md` for every Ulta Beauty endpoint this skill uses (method, path, params, description).
Examples
- Filtered category browse:
/ulta/categoriesto find a
department's category value, then /ulta/category paginated with filter set to a facet code from that category's own response, to narrow by benefit/brand.
- Product due diligence:
/ulta/product/{productId}for
price/rating/shades, then /ulta/product/questions and /ulta/product/reviews (both by product_id) to summarize what shoppers ask and say before recommending it.
- Find a store:
/ulta/storeswithsearchset to a zip code or
city, then check hours/services on the closest result.
Notes & limits
- Credits / pay-on-success: billed only on
2xx; free tier 2,000 credits/mo.
Key at https://crawlora.net.
- Public data only — public Ulta Beauty product/category/store pages; respect Ulta's terms.
- Security: key lives in
CRAWLORA_API_KEYonly — never hardcode, query-param, or commit it. - Results are paginated — pass
page(1-based) to walkcategory,search,
questions, and reviews listings.
- Product identity is `product_id` (aka
productId, from a search
result's product_id field or the product URL) — /ulta/product/{productId}, /ulta/product/questions, and /ulta/product/reviews all key off it; sku is optional and only narrows /ulta/product/{productId} to one shade/color variant.
/ulta/storesneeds eithersearchor bothlatandlng; an
unresolved search or an empty radius returns a well-formed empty result, not an error — same for a nonsense search/query on /ulta/search and /ulta/suggest.
- An unrecognized
categoryon/ulta/categoryreturns404, but an
unrecognized product_id on /ulta/product/questions or /ulta/product/reviews returns a normal empty result instead.



