Etsy · Schema
ListingReview
A listing review record left by a User.
MarketplaceE-CommerceHandmadeListingsOrderPaymentsReviewsShippingTaxonomyAuthentication
Properties
| Name | Type | Description |
|---|---|---|
| shop_id | integer | The shop's numeric ID. |
| listing_id | integer | The ID of the ShopListing that the TransactionReview belongs to. |
| rating | integer | Rating value on scale from 1 to 5 |
| review | string | A message left by the author, explaining the feedback, if provided. |
| language | string | The language of the TransactionReview |
| image_url_fullxfull | string | The url to a photo provided with the feedback, dimensions fullxfull. Note: This field may be absent, depending on the buyer's privacy settings. |
| create_timestamp | integer | The date and time the TransactionReview was created in epoch seconds. |
| created_timestamp | integer | The date and time the TransactionReview was created in epoch seconds. |
| update_timestamp | integer | The date and time the TransactionReview was updated in epoch seconds. |
| updated_timestamp | integer | The date and time the TransactionReview was updated in epoch seconds. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListingReview",
"description": "A listing review record left by a User.",
"$id": "https://raw.githubusercontent.com/api-evangelist/etsy/refs/heads/main/json-schema/open-api-v3-listing-review-schema.json",
"type": "object",
"properties": {
"shop_id": {
"type": "integer",
"description": "The shop's numeric ID.",
"format": "int64",
"minimum": 1,
"example": 123456
},
"listing_id": {
"type": "integer",
"description": "The ID of the ShopListing that the TransactionReview belongs to.",
"format": "int64",
"minimum": 1,
"example": 123456789
},
"rating": {
"type": "integer",
"description": "Rating value on scale from 1 to 5",
"minimum": 1,
"maximum": 5,
"example": 5
},
"review": {
"type": "string",
"description": "A message left by the author, explaining the feedback, if provided.",
"nullable": true,
"example": "example string"
},
"language": {
"type": "string",
"description": "The language of the TransactionReview",
"example": "en-US"
},
"image_url_fullxfull": {
"type": "string",
"description": "The url to a photo provided with the feedback, dimensions fullxfull. Note: This field may be absent, depending on the buyer's privacy settings.",
"nullable": true,
"example": "https://www.etsy.com/listing/123456789"
},
"create_timestamp": {
"type": "integer",
"description": "The date and time the TransactionReview was created in epoch seconds.",
"minimum": 946684800,
"example": 1758153645
},
"created_timestamp": {
"type": "integer",
"description": "The date and time the TransactionReview was created in epoch seconds.",
"minimum": 946684800,
"example": 1758153645
},
"update_timestamp": {
"type": "integer",
"description": "The date and time the TransactionReview was updated in epoch seconds.",
"minimum": 946684800,
"example": 1758153645
},
"updated_timestamp": {
"type": "integer",
"description": "The date and time the TransactionReview was updated in epoch seconds.",
"minimum": 946684800,
"example": 1758153645
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/open-api-v3-listing-review"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
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.