---
title: "IProductDefinition Interface"
canonical: https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.iproductdefinition.htm
archived: true
applies_to:
  - product: "Customer's Canvas On-Premises"
  - product: "Design Editor"
    versions: ["6.15.0", "6.x (may differ)"]
---

**You’re viewing outdated documentation.** [View the latest Customer’s Canvas On-Premises documentation](https://customerscanvas.com/docs/on-premises/).

# IProductDefinition Interface

**Applies to:** Customer's Canvas On-Premises; Design Editor 6.15.0, 6.x (may differ) · **Archived documentation**
 
A structure holding settings to create a product.
  
 - example
     - ```
const productDefinition = {
    surfaces: {
        // Get surfaces from the folder.
        designFolder: "myphotoBook",
        // Name surfaces as "Page 1", "Page 2", and so on.
        name: "Page {0}",
        // Get mockups from the folder.
        mockupFolder: { up: "photoBookMockups" }
    },
    // Define safety lines for all surfaces (product pages).
    defaultSafetyLines: [{
        margin: 5,
        color: "rgba(0,0,0,1)"
    }]
};
```
 
## Properties
 
### Optional defaultCropMarks
 
defaultCropMarks: [ICropMark](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.icropmark.htm.md) []

A collection of default crop marks defined for every surface (page) in the product.
 
### Optional defaultDesignLocation
 
defaultDesignLocation: [IPointF](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.ipointf.htm.md)

Coordinates of the design relative to the upper-left corner of the mockup, in points.
 
### Optional defaultSafetyLines
 
defaultSafetyLines: [ISafetyLine](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.isafetyline.htm.md) []

A collection of safety lines defined for every surface (page) in the product.
 
### Optional name
 
name: string

Inherited from [IModelComponent](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.imodelcomponent.htm.md).[name](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.imodelcomponent.htm.md)

A name of a surface (a page) in the product.
 
### surfaces
 
surfaces: [SurfaceTypes](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.htm.md) []  |  [ISurfacesFromFolder](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.isurfacesfromfolder.htm.md)  |  [ISurfacesFromMultipageTemplate](https://customerscanvas.com/docs/cc6/customerscanvas.iframeapi.objectmodel.isurfacesfrommultipagetemplate.htm.md)

A collection of surfaces (pages) defined in the product.
