E-commerce

Marketplace Seller Profile

/extract/json

Schema for seller or merchant profile pages on e-commerce marketplaces.

Download the schemae-commerce/marketplace-seller-profile.json

marketplace-seller-profile.schema

// names marked ? are optional

platform:string// E-commerce marketplace platform (e.g., Amazon, eBay, Etsy). Commonly found in: site domain, platform branding, seller profile URL.
seller_id?:string// Platform-specific seller identifier. Commonly found in: seller profile URL parameter, seller ID field, storefront slug.
seller_name:string// Name of the seller or store. Commonly found in: seller profile header, store name display, storefront title.
seller_url?:string// URL of the seller's storefront page. Commonly found in: storefront URL, seller link href, profile page URL.
rating?:number// Overall seller rating score. Commonly found in: seller rating display, feedback score, star rating.
rating_count?:number// Total number of ratings or feedback received. Commonly found in: rating count label, feedback count display, review count.
positive_feedback_pct?:number// Percentage of positive feedback. Commonly found in: positive feedback percentage, seller rating details, feedback breakdown.
years_active?:number// Number of years the seller has been active on the platform. Commonly found in: member since date calculation, seller tenure display, account age.
fulfilled_by_platform?:boolean// Whether the seller uses platform fulfillment (e.g., FBA). Commonly found in: FBA badge, fulfilled by platform indicator, shipping info.
total_products_listed?:number// Total number of products listed by the seller. Commonly found in: product count display, total listings label, storefront stats.
product_categories?:string[]// Categories in which the seller lists products. Commonly found in: seller categories section, product category filters, storefront navigation.
country_of_origin?:string// Country where the seller is based. Commonly found in: seller location field, ships from country, seller profile details.
top_selling_products?:object[]// List of the seller's top-selling products. Commonly found in: featured products section, top sellers display, storefront highlighted items.
title:string// Product title.
rank?:number// Rank among seller's top products.
store_description?:string// Seller's store description or about text. Commonly found in: about this seller section, store bio, seller profile description.
business_type?:string// Whether the seller is an individual or registered business. Commonly found in: seller type badge, business seller indicator, seller profile details. One of: individual, business, other.
page_title?:string// Title of the source page. Tabstack auto-fills this from page metadata when left empty.
favicon?:string// Favicon URL of the source page. Tabstack auto-fills this from page metadata when left empty.

Try it live

A sample Marketplace Seller Profile document, generated from the schema. Edit it, or paste a real response, and see it checked against the schema instantly. It runs in your browser, nothing is sent anywhere.

your-output.json
validation

Valid, matches Marketplace Seller Profile

Every required field is present and each value matches its type. Extra fields are allowed. A field the page does not carry is not guaranteed to come back as null, so check values rather than only checking for null.

/extract/json

Copy-paste usage

The same call in TypeScript, Python, and curl. Point it at your own URL and go. The schema drives the response, so you get back the fields you asked for instead of a page to parse.

Features

  • Typed TypeScript and Python SDKs
  • One call, no parsing code and no second LLM pass
  • The same field names on every request, even when the page layout changes
marketplace-seller-profile.ts
// curl -sfLO https://raw.githubusercontent.com/Mozilla-Ocho/tabstack-schemas/main/e-commerce/marketplace-seller-profile.json
import Tabstack from '@tabstack/sdk'
import schema from './marketplace-seller-profile.json' with { type: 'json' }

const client = new Tabstack() // reads TABSTACK_API_KEY from the environment

try {
  const data = await client.extract.json({
    url: 'https://example.com/products/item',
    json_schema: schema,
    effort: 'standard', // 'min' | 'standard' | 'max'
  })

  console.log(data)
} catch (err) {
  console.error('Extraction failed:', err)
}

Ship this schema in one call.

Pass a URL, get matching JSON back. Free to start, no extraction layer to maintain.