PSAStore API endpoint
Returns capped URL entries from the PSA Team Store's (https://store.psacard.com) child sitemaps matching the requested type. The storefront URL is fixed server-side.
/psastore/sitemap/urlsThis is a brand-pinned endpoint: the storefront URL (https://store.psacard.com) is fixed server-side, so unlike the generic /shopify/* family this wraps, there is no url request parameter. The same storefront is reachable through the generic family by passing url=https://store.psacard.com directly.
Query parameters:
type: optional. Allowed values: all, products, collections, pages, blogs, agentic_discovery, other. Defaults to all.limit: optional. Defaults to 50, maximum 250.Notable response behavior:
/sitemap.xml until limit URL entries is reached.loc, inferred type, handle, lastmod, changefreq, and optional images.| Field | Filled in, of 40 checked | Values in the sample |
|---|---|---|
| loc | 40 | store.psacard.com |
| type | 40 | products in all 40 |
| changefreq | 40 | daily in all 40 |
| handle | 39 | |
| lastmod | 39 | 2026-10-13 |
| images | 39 | median 1 entry |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| type | string | No | Sitemap type. Allowed values: all, products, collections, pages, blogs, agentic_discovery, other Allowed values: all, products, collections, pages, blogs, agentic_discovery, other. | products | |
| limit | integer | No | 50 and supports up to 250 | Maximum URL entries, defaults to 50 and supports up to 250 | 50 |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/psastore/sitemap/urls?type=all&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"store_url": "https://store.psacard.com",
"source_url": "https://store.psacard.com",
"type": "products",
"limit": 2,
"urls": [
{
"loc": "https://store.psacard.com/products/example-product-handle",
"type": "products",
"handle": "example-product-handle",
"lastmod": "2026-05-31T23:31:08-07:00",
"changefreq": "daily"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/shopifybrands.sitemapURLsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | shopify.SitemapURLsResponse | No | ||||
| data.limit | integer | No | 50 | Maximum number of URL entries returned. | ||
| data.source_url | string | No | https://www.allbirds.com | URL the data was read from. | ||
| data.store_url | string | No | https://www.allbirds.com | Base URL of the Shopify storefront that was queried. | ||
| data.type | string | No | products | Sitemap section requested: `all`, `products`, `collections`, `pages`, `blogs`, `agentic_discovery` or `other`. | ||
| data.urls | array | No | URL entries from the matching sitemaps. | |||
| data.urls[].changefreq | string | No | weekly | Update frequency hint from the sitemap entry, for example `weekly`. | ||
| data.urls[].handle | string | No | mens-wool-runners | Handle of the product, collection or page the URL points to. | ||
| data.urls[].images | array | No | Images listed for the URL in the sitemap. | |||
| data.urls[].images[].caption | string | No | Caption of the image listed in the sitemap. | |||
| data.urls[].images[].title | string | No | Men's Wool Runner | Title of the image listed in the sitemap. | ||
| data.urls[].images[].url | string | No | https://cdn.shopify.com/example.png | URL of the image file. | ||
| data.urls[].lastmod | string | No | 2026-03-19T11:41:39-07:00 | Last modification time listed for the URL in the sitemap. | ||
| data.urls[].loc | string | No | https://www.allbirds.com/products/mens-wool-runners | Storefront URL listed in the sitemap. | ||
| data.urls[].type | string | No | products | Section the URL belongs to: `products`, `collections`, `pages`, `blogs`, `agentic_discovery` or `other`. | ||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/psastore/sitemap/urls?type=all&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"