{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/aibenchmarkindex-com/json-schema/aibenchmarkindex-com-product-schema.json",
  "title": "Product",
  "x-generated": "2026-11-01",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/aibenchmarkindex-com-openapi.json#/components/schemas/Product",
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 80,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "category": {
      "type": "string",
      "maxLength": 80,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "brand": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "description": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "retailer": {
      "type": "string",
      "enum": [
        "amazon",
        "etsy",
        "other"
      ]
    },
    "url": {
      "type": "string",
      "maxLength": 2000
    },
    "price_cents": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "currency": {
      "type": "string"
    },
    "price_as_of": {
      "type": "string"
    },
    "image_url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 2000
        },
        {
          "type": "null"
        }
      ]
    },
    "image_alt": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 300
        },
        {
          "type": "null"
        }
      ]
    },
    "image_source": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 300
        },
        {
          "type": "null"
        }
      ]
    },
    "source": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "tags": {
      "default": [],
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 80,
        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
      }
    },
    "featured": {
      "default": false,
      "type": "boolean"
    },
    "rank": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 9999
    },
    "page_url": {
      "type": "string",
      "description": "This site's page for the product."
    },
    "buy_url": {
      "type": "string",
      "description": "The outbound link, with this site's affiliate tag when it has one."
    }
  },
  "required": [
    "slug",
    "category",
    "title",
    "brand",
    "description",
    "retailer",
    "url",
    "price_cents",
    "currency",
    "price_as_of",
    "source",
    "tags",
    "featured",
    "rank",
    "page_url",
    "buy_url"
  ],
  "additionalProperties": false
}