Back to API Presets
API Preset
November 14, 2025By Product API TeamOven

Building an Oven API with The Product API: A Complete Guide

Create a specialized Oven Product API with capacity, cooking modes, fuel type, and installation specifications. Perfect for appliance marketplaces and kitchen equipment platforms.

Introduction to Ovens

Ovens are essential kitchen appliances for baking, roasting, and cooking. With numerous models available from brands like GE, Whirlpool, KitchenAid, Samsung, and LG, finding the right oven with the right features can be overwhelming. Whether you're a home chef looking for a convection wall oven, a renter needing a range oven, or a developer building an appliance marketplace, having structured oven product data is crucial.

Imagine being able to search for ovens and instantly get detailed information about each appliance - from capacity and fuel type to cooking modes and smart features, from dimensions to self-cleaning capabilities. This is exactly what a specialized Oven Product API can provide.

What Makes an Oven API Special?

An Oven Product API goes beyond basic product listings. It understands the unique characteristics that matter to oven buyers:

  • Type: Wall oven, range oven, double oven, or toaster oven
  • Fuel Type: Electric, gas, or dual fuel
  • Capacity: Interior space in cubic feet
  • Features: Convection, self-cleaning, and cooking modes
  • Size: Dimensions for fitting into kitchen spaces
  • Smart Features: Wi-Fi connectivity and app control
  • Design: Door style and interior features

With this structured data, you can build powerful features like filtering by capacity, comparing fuel types, or recommending ovens based on kitchen size.

Try It Out: Search for Ovens

Use the search bar below to search for ovens. Try queries like "GE Profile double wall oven", "KitchenAid gas range oven", or "Samsung smart convection oven". The results will include detailed specifications automatically extracted from product information across the web.

Try the Oven API

Search for ovens and see detailed specifications automatically extracted from product information.

How It Works: Technical Implementation

Now that you've seen the API in action, let's dive into how it's implemented. This specialized Oven API is built on top of The Product API which is an AI-based product search API that works with any product and any type of query. It responds with structured JSON and supports custom structured responses, allowing you to build specialized APIs for any product category.

The Product API's powerful custom_data_schema feature allows you to define additional structured fields specific to your product category, enabling you to create category-specific APIs like this Oven API. For more details on how the API works, see the full documentation.

Understanding APIs for Product Data

An API (Application Programming Interface) enables different software applications to communicate. For product data:

  • Input: You send a search query (e.g., "oven GE Profile double")
  • Processing: The API searches across multiple sources and uses AI to extract relevant information
  • Output: You receive structured product data in JSON format

The flexibility of a product API means you can customize it for specific categories by defining additional data fields through JSON Schema.

Creating an Oven-Specific JSON Schema to pass as custom_data_schema of search request

Here's the JSON Schema we use for oven products:

{
  "type": "object",
  "properties": {
    "oven_type": {
      "type": "string",
      "enum": ["wall_oven", "range_oven", "double_oven", "convection_oven", "steam_oven", "toaster_oven"],
      "description": "Type of oven"
    },
    "fuel_type": {
      "type": "string",
      "enum": ["electric", "gas", "dual_fuel"],
      "description": "Fuel source type"
    },
    "capacity": {
      "type": "string",
      "description": "Interior capacity in cubic feet (e.g., '5.0 cu ft', '6.2 cu ft')"
    },
    "convection": {
      "type": "boolean",
      "description": "Convection cooking capability"
    },
    "self_cleaning": {
      "type": "string",
      "enum": ["pyrolytic", "catalytic", "steam", "none"],
      "description": "Self-cleaning feature type"
    },
    "cooking_modes": {
      "type": "array",
      "items": { "type": "string" },
      "description": "Available cooking modes (e.g., ['bake', 'broil', 'roast', 'warm', 'proof'])"
    },
    "max_temperature": {
      "type": "string",
      "description": "Maximum temperature in Fahrenheit or Celsius (e.g., '550°F', '300°C')"
    },
    "rack_positions": {
      "type": "number",
      "description": "Number of rack positions"
    },
    "interior_light": {
      "type": "boolean",
      "description": "Interior oven light"
    },
    "window": {
      "type": "boolean",
      "description": "Window in oven door"
    },
    "door_style": {
      "type": "string",
      "enum": ["single", "double", "french_door"],
      "description": "Oven door style"
    },
    "width": {
      "type": "string",
      "description": "Width in inches"
    },
    "height": {
      "type": "string",
      "description": "Height in inches"
    },
    "depth": {
      "type": "string",
      "description": "Depth in inches"
    },
    "smart_features": {
      "type": "boolean",
      "description": "Smart connectivity features (Wi-Fi, app control)"
    },
    "color_finish": {
      "type": "array",
      "items": { "type": "string" },
      "description": "Available color/finish options (e.g., ['stainless steel', 'black', 'white'])"
    },
    "price_range": {
      "type": "string",
      "description": "Price range category (budget, mid-range, premium)"
    }
  },
  "required": ["oven_type", "fuel_type", "capacity"]
}

Using the Category Prefix

When searching for ovens, we prefix the search query with "oven" to help the AI understand the context and return more relevant results.

Example Search Queries:

  • oven GE Profile double wall
  • oven KitchenAid gas range
  • oven Samsung smart convection
  • oven Whirlpool self-cleaning

The prefix "oven" ensures the API understands you're looking specifically for ovens and not other appliances.

Complete Example: Making a Request

Here's how to make a request to The Product API with an oven-specific schema. For complete API reference including authentication, endpoints, and all parameters, see the documentation:

const response = await fetch('https://api.example.com/api?search=oven%20GE%20Profile%20double&with_image=true', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: JSON.stringify({
    custom_data_schema: {
      type: "object",
      properties: {
        oven_type: {
          type: "string",
          enum: ["wall_oven", "range_oven", "double_oven", "convection_oven", "steam_oven", "toaster_oven"],
          description: "Type of oven"
        },
        fuel_type: {
          type: "string",
          enum: ["electric", "gas", "dual_fuel"],
          description: "Fuel source type"
        },
        capacity: {
          type: "string",
          description: "Interior capacity in cubic feet"
        },
        convection: {
          type: "boolean",
          description: "Convection cooking capability"
        },
        self_cleaning: {
          type: "string",
          enum: ["pyrolytic", "catalytic", "steam", "none"],
          description: "Self-cleaning feature type"
        },
        cooking_modes: {
          type: "array",
          items: { type: "string" },
          description: "Available cooking modes"
        },
        max_temperature: {
          type: "string",
          description: "Maximum temperature"
        },
        rack_positions: {
          type: "number",
          description: "Number of rack positions"
        },
        interior_light: {
          type: "boolean",
          description: "Interior oven light"
        },
        window: {
          type: "boolean",
          description: "Window in oven door"
        },
        door_style: {
          type: "string",
          enum: ["single", "double", "french_door"],
          description: "Oven door style"
        },
        width: {
          type: "string",
          description: "Width in inches"
        },
        height: {
          type: "string",
          description: "Height in inches"
        },
        depth: {
          type: "string",
          description: "Depth in inches"
        },
        smart_features: {
          type: "boolean",
          description: "Smart connectivity features"
        },
        color_finish: {
          type: "array",
          items: { type: "string" },
          description: "Available color/finish options"
        },
        price_range: {
          type: "string",
          description: "Price range category"
        }
      },
      required: ["oven_type", "fuel_type", "capacity"]
    }
  })
});

const data = await response.json();
console.log(data.products);

Expected Response

The API will return products with standard fields plus your custom custom_data field:

{
  "status": "success",
  "products": [
    {
      "name": "GE Profile P2B930YPFS Double Wall Oven",
      "description": "The GE Profile P2B930YPFS features dual ovens with convection...",
      "brand": "GE",
      "image": "https://example.com/image.jpg",
      "custom_data": {
        "oven_type": "double_oven",
        "fuel_type": "electric",
        "capacity": "6.2 cu ft",
        "convection": true,
        "self_cleaning": "pyrolytic",
        "cooking_modes": ["bake", "broil", "roast", "warm", "proof", "convection bake", "convection roast"],
        "max_temperature": "550°F",
        "rack_positions": 4,
        "interior_light": true,
        "window": true,
        "door_style": "double",
        "width": "30 inches",
        "height": "58.5 inches",
        "depth": "26.5 inches",
        "smart_features": true,
        "color_finish": ["stainless steel"],
        "price_range": "premium"
      }
    }
  ]
}

Conclusion

By combining the flexible Product API with an oven-specific JSON Schema, you can create a powerful, specialized API for oven products. The key is:

  1. Define your schema based on what oven data matters to your application
  2. Use category prefixes in search queries for better context
  3. Leverage the custom_data field to build rich, category-specific features

The same approach works for any product category - you just need to define the right schema for your needs!

Ready to get started? Create your own product API on The Product API and start building your own category-specific APIs today!


Ready to build your own category-specific API? Check out our other API preset guides for microwaves, dishwashers, refrigerators, and more!