Monocrawl Wayfair API
The Wayfair API from Monocrawl — 1 operation(s) for wayfair.
The Wayfair API from Monocrawl — 1 operation(s) for wayfair.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/monocrawl:monocrawl-wayfair-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Monocrawl Wayfair API
version: 0.1.0
description: One key, one envelope, one credit meter across social, search, commerce and web data.
contact:
name: Monocrawl support
url: https://www.monocrawl.com/contact
termsOfService: https://www.monocrawl.com/legal/terms-and-conditions
servers:
- url: https://www.monocrawl.com
security:
- ApiKeyHeader: []
tags:
- name: Wayfair
paths:
/v1/wayfair/reviews:
get:
operationId: wayfair_reviews
tags:
- Wayfair
summary: Wayfair product reviews
description: 'Shopper reviews of a product: rating, text, date, verified buyer and photos. Costs 3 credits per successful live response.'
parameters:
- name: id
in: query
required: true
schema:
type: string
example: W003078383
description: Wayfair SKU, or the product URL
- name: page
in: query
required: false
schema:
type: string
example: '1'
description: Page number
- name: sort
in: query
required: false
schema:
type: string
enum:
- relevance
- date
- date_desc
- date_asc
- rating
- rating_desc
- rating_asc
example: relevance
description: 'relevance, date or rating Accepted values: relevance, date, date_desc, date_asc, rating, rating_desc, rating_asc. Case, spaces, hyphens and underscores are interchangeable.'
- name: star
in: query
required: false
schema:
type: string
example: ''
description: Keep one star rating only
- name: domain
in: query
required: false
schema:
type: string
enum:
- com
- ca
- co.uk
- de
example: com
description: 'Storefront: com, ca, co.uk or de Accepted values: com, ca, co.uk, de. Case, spaces, hyphens and underscores are interchangeable.'
- name: dry_run
in: query
required: false
schema:
type: string
enum:
- '1'
- '0'
- 'true'
- 'false'
example: '1'
description: 'Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable.'
- name: X-Max-Credits
in: header
required: false
schema:
type: integer
minimum: 0
maximum: 9007199254740991
example: 5
description: Optional credit reservation ceiling for this individual request. Send a non-negative integer in decimal digits. Live execution checks the required reservation after resolving free cache hits or buffered continuation, before charging or calling a supplier. A higher reservation returns HTTP 422 INVALID_PARAMETERS with reason max_credits_exceeded and charges nothing. Invalid header values also return 422. Zero permits only a zero-credit reservation; omitting the header uses normal pricing. dry_run remains a free preview. This does not cap later requests, batches or scheduled runs.
security:
- ApiKeyHeader: []
- BearerKey: []
responses:
'200':
description: 'The common success envelope; `data` is endpoint-specific. Many lists use items/count/cursor; bundles use named collections and their documented continuation metadata. HTTP 200 can contain a partial bundle: inspect complete, partial and legs where supplied.'
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/Success'
- type: object
properties:
data:
$schema: https://json-schema.org/draft/2020-12/schema
$id: https://www.monocrawl.com/schemas/wayfair/reviews.json
title: wayfair/reviews data fields
description: Required core structure for successful data, with optional source fields. Additional fields are allowed. This is not a completeness guarantee.
type: object
properties:
items:
type: array
items:
type: object
properties:
id:
type:
- string
- 'null'
description: Exact source identifier; preserve it as a string.
title:
type:
- string
- 'null'
description: title
text:
type:
- string
- 'null'
description: text
created_at:
type:
- string
- 'null'
description: created at
posted_at:
type:
- string
- 'null'
description: posted at
date:
type:
- string
- 'null'
description: date
author:
anyOf:
- type:
- object
- 'null'
properties:
id:
type:
- string
- 'null'
description: Exact source identifier; preserve it as a string.
handle:
type:
- string
- 'null'
description: handle
name:
type:
- string
- 'null'
description: name
url:
type:
- string
- 'null'
description: url
headline:
type:
- string
- 'null'
description: headline
location:
type:
- string
- 'null'
description: location
avatar_url:
type:
- string
- 'null'
description: avatar url
followers:
type:
- number
- 'null'
description: Public follower count.
verified:
type:
- boolean
- 'null'
description: Explicit verification flag when supplied.
additionalProperties: true
- type:
- string
- 'null'
description: Public reviewer name.
rating:
anyOf:
- type:
- number
- 'null'
description: Source rating.
- type:
- object
- 'null'
properties:
value:
type:
- number
- 'null'
description: Source rating value.
max:
type:
- number
- 'null'
description: Rating scale maximum.
votes:
type:
- number
- 'null'
description: Source vote count.
additionalProperties: true
verified_purchase:
type:
- boolean
- 'null'
description: Explicit verification only; null is unknown.
additionalProperties: true
allOf:
- anyOf:
- required:
- id
properties:
id:
type:
- string
description: Exact source identifier; preserve it as a string.
minLength: 1
- required:
- title
properties:
title:
type:
- string
description: title
minLength: 1
- required:
- text
properties:
text:
type:
- string
description: text
minLength: 1
- required:
- created_at
properties:
created_at:
type:
- string
description: created at
minLength: 1
- required:
- posted_at
properties:
posted_at:
type:
- string
description: posted at
minLength: 1
- required:
- date
properties:
date:
type:
- string
description: date
minLength: 1
- required:
- author
properties:
author:
anyOf:
- type:
- object
- 'null'
properties:
id:
type:
- string
- 'null'
description: Exact source identifier; preserve it as a string.
handle:
type:
- string
- 'null'
description: handle
name:
type:
- string
- 'null'
description: name
url:
type:
- string
- 'null'
description: url
headline:
type:
- string
- 'null'
description: headline
location:
type:
- string
- 'null'
description: location
avatar_url:
type:
- string
- 'null'
description: avatar url
followers:
type:
- number
- 'null'
description: Public follower count.
verified:
type:
- boolean
- 'null'
description: Explicit verification flag when supplied.
additionalProperties: true
- type:
- string
- 'null'
description: Public reviewer name.
- required:
- rating
properties:
rating:
anyOf:
- type:
- number
- 'null'
description: Source rating.
- type:
- object
- 'null'
properties:
value:
type:
- number
- 'null'
description: Source rating value.
max:
type:
- number
- 'null'
description: Rating scale maximum.
votes:
type:
- number
- 'null'
description: Source vote count.
additionalProperties: true
- required:
- verified_purchase
properties:
verified_purchase:
type:
- boolean
description: Explicit verification only; null is unknown.
count:
type:
- number
- 'null'
description: Returned rows, not the total population.
cursor:
type:
- string
- 'null'
description: Opaque continuation; pass unchanged.
has_more:
type:
- boolean
- 'null'
description: Source continuation indicator.
total:
type:
- number
- 'null'
description: Source-reported total; null means unknown.
additionalProperties: true
required:
- items
x-contract-version: '2026-09-22'
x-validation-scope: Required success payload structure; optional fields and source completeness remain separate.
examples:
- items: []
cursor: null
default:
description: The error envelope — the same shape for every non-2xx status.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
x-credits: 3
x-production-available: true
x-capacity:
status: not_assessed
message: Capacity is workload-dependent; configured routes do not establish sustained throughput or an availability guarantee.
x-availability-scope: Structural check of the effective registered chain, production permission, adapter, configured cost and quality floor without request parameters. True is not a live-health, credential, quota, subscription-entitlement, complete-data or deployment-exposure guarantee. False means no structurally eligible candidate; null means metadata could not establish availability. Composite child capability still depends on its component routes.
x-live-proven: true
components:
schemas:
Error:
type: object
required:
- success
- error
- credits_used
- request_id
properties:
success:
const: false
error:
type: object
required:
- type
- message
- status
properties:
type:
type: string
enum:
- UNAUTHORIZED
- KEY_REVOKED
- KEY_LIMIT_EXCEEDED
- RATE_LIMITED
- INSUFFICIENT_CREDITS
- RESOURCE_NOT_FOUND
- INVALID_PARAMETERS
- TARGET_ACCESS_DENIED
- UPSTREAM_ERROR
- UPSTREAM_TIMEOUT
- FREE_CAPACITY_UNAVAILABLE
- CAPACITY_UNAVAILABLE
- ENDPOINT_NOT_FOUND
- ENDPOINT_NOT_AVAILABLE
- FAIR_USE_EXCEEDED
- INTERNAL_ERROR
message:
type: string
status:
type: integer
doc_url:
type: string
description: Deep link to the exact section of the errors guide for this type.
details:
type: object
credits_used:
type:
- integer
- 'null'
description: Confirmed net charge; null when billing is pending reconciliation. Inspect error.details.billing_status and retain request_id.
credits_remaining:
type: integer
request_id:
type: string
Success:
type: object
required:
- success
- platform
- endpoint
- data
- credits_used
- credits_remaining
- request_id
properties:
_completeness:
type: object
description: Reported response completeness, not a guarantee of complete platform history. Missing source assertions remain unknown.
properties:
state:
type: string
enum:
- complete
- partial
- unknown
scope:
type: string
inspection_limited:
type: boolean
success:
const: true
platform:
type: string
endpoint:
type: string
description: The resolved path, e.g. `/v1/github/profile`.
data:
description: Amazon responses include marketplace.country and marketplace.domain (resolved request marketplace, UK by default). X profiles preserve location, bio_link and cover_url when supplied. TikTok profiles preserve commerce_user, seller, region, location and business_category when supplied; region identifies the account region rather than personal residence. TikTok comments use platform_default selection, which can change between fetches; keep the same video and options when following cursors. Amazon review variant is readable text. Facebook profiles preserve cover_url, following and created_at when supplied; likes_count and followers are distinct and follower totals may be rounded. Endpoint-specific normalized payload, not one universal post/profile schema. Many lists use items/count/cursor; a null cursor means no usable next cursor was supplied, not proof that all history was retrieved. Check has_more and warnings where present. Social full-profile bundles use posts_cursor and posts_pagination.next_params; retain all returned next parameters. YouTube channel bundles instead use recent_videos, cursor and recent_videos_pagination. Inspect complete/partial/legs where supplied for bounded or failed components. Optional model-derived fields are labelled, not source facts.
credits_used:
type: integer
credits_remaining:
type: integer
request_id:
type: string
cached:
type: boolean
stale:
type: boolean
description: True only for an explicitly labelled, zero-credit reference snapshot served after a temporary upstream failure.
age_seconds:
type: integer
minimum: 0
description: Age of a stale snapshot since its original retrieval; not reset by outage recovery.
fetched_at:
type: string
format: date-time
description: Original retrieval time of a stale snapshot, in UTC.
synthetic:
type: boolean
description: Present and true only on the explicitly requested /sandbox surface. Synthetic responses are representative and charged 0 credits; production /v1 never returns them.
degraded:
type: boolean
description: Reserved for sandbox compatibility. Production /v1 reports upstream failure as an error and never serves a representative fallback.
securitySchemes:
ApiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: Your API key (`mn_…`), from the console. The recommended style.
BearerKey:
type: http
scheme: bearer
description: The same key as a Bearer token, for clients that only expose an Authorization field. Keys are never accepted in the query string — URLs leak into logs and referrers.