List extraction schemas
GET
/api/v1/extraction/schemas
const url = 'https://api.justcrawl.io/api/v1/extraction/schemas?pageType=product&limit=50';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.justcrawl.io/api/v1/extraction/schemas?pageType=product&limit=50' \ --header 'Authorization: Bearer <token>'Read-only list of XPath schemas the platform has discovered for cross-org sites.
Schemas are global by design — they describe page structure, not tenant data, so the
same (domain, pageType) pair is shared across all orgs that scrape it. Org-specific
overrides live on the /attributes/{domain} endpoint and are merged at extraction time.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”domain
string
Optional. Filter to one site (e.g. walmart.com).
pageType
string
Optional. Filter to one page-type taxonomy.
limit
integer
Page size cap. Values above 200 are clamped to 200.
Responses
Section titled “Responses”List of extraction schemas.
Media typeapplication/json
object
items
Array<object>
object
id
string
domain
string
pageType
string
version
integer
attributes
Array<object>
object
name
required
string
xpaths
required
Array<string>
type
required
string
description
string
antiPatterns
Array<string>
semanticType
string
validation
object
minLength
integer
maxLength
integer
min
number
max
number
pattern
string
confidence
number
discoveredBy
string
sampleCount
integer
lastValidatedAt
string format: date-time
expiresAt
string format: date-time
createdAt
string format: date-time
Example
{ "items": [ { "pageType": "product", "attributes": [ { "type": "text", "semanticType": "brand_name" } ], "discoveredBy": "llm" } ]}Missing or invalid authentication token
Media typeapplication/json
object
error
string
Example
{ "error": "Missing or invalid authentication token"}Insufficient permissions for this operation
Media typeapplication/json
object
error
string
Example
{ "error": "No organization. Complete onboarding first."}Unexpected server error. Logs and PostHog $exception capture
Media typeapplication/json
object
error
string
Example
{ "error": "Something went wrong"}