Probo Reseller API icon

Probo Reseller API

(0 reviews)

Configure endpoint example

The configuration endpoint allow to configure a product in the way a product is configured on the Probo webshop.

In this example a canvas is being configured via POST https://api.proboprints.com/products/configure

In each step the selected and avaiable options are included in the response. The final response includes price information and the calculation\_id referring to this configuration.

Cross sells wil only be shown for the last product in the products array.

Step 1 - Get initial options (CONFIGURATION START)

Payload:

{
 "products": [
        {
            "code": "banner-510",
            "options": []
        }
    ]
}

Response:

{
    "status": "ok",
    "code": 200,
    "message": "Options calculated",
    "products": [
        {
            "code": "banner-510",
            "can_order": false,
            "amount": 0,
            "width": 0,
            "height": 0,
            "length": 0,
            "available_options": [
                {
                    "code": "size",
                    "can_order": null,
                    "amount": null,
                    "width": null,
                    "height": null,
                    "length": null,
                    "children": [
                        {
                            "type_code": "width",
                            "name": "Breedte",
                            "description": null,
                            "value": null,
                            "code": "width",
                            "default_value": null,
                            "min_value": "0.00",
                            "max_value": "99999.00",
                            "step_size": null,
                            "scale": 1,
                            "reversible": true,
                            "last_option": false,
                            "images": []
                        },
                        {
                            "type_code": "height",
                            "name": "Hoogte",
                            "description": null,
                            "value": null,
                            "code": "height",
                            "default_value": null,
                            "min_value": "0.00",
                            "max_value": "99999.00",
                            "step_size": null,
                            "scale": 1,
                            "reversible": true,
                            "last_option": false,
                            "images": []
                        }
                    ]
                },
                {
                    "code": "amount",
                    "can_order": null,
                    "amount": null,
                    "width": null,
                    "height": null,
                    "length": null,
                    "children": [
                        {
                            "type_code": "amount",
                            "name": "Hoeveelheid",
                            "description": null,
                            "value": null,
                            "code": "amount",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": []
                        }
                    ]
                }
            ],
            "selected_options": []
        }
    ]
}

Step 2 - Size and amount

Payload:

{
    "products": [
        {
            "code": "banner-510",
            "options": [
                {
                    "code": "width",
                    "value": "200"
                },
                {
                    "code": "height",
                    "value": "100"
                },
                {
                    "code": "amount",
                    "value": "1"
                }
            ]
        }
    ]
}

Response:

{
    "status": "ok",
    "code": 200,
    "message": "Options calculated",
    "products": [
        {
            "code": "banner-510",
            "can_order": false,
            "amount": 1,
            "width": 200,
            "height": 100,
            "length": 0,
            "available_options": [
                {
                    "code": "finishing-per-side-all-sides",
                    "can_order": null,
                    "amount": null,
                    "width": null,
                    "height": null,
                    "length": null,
                    "children": [
                        {
                            "type_code": "radio",
                            "name": "Voor alle zijden gelijk",
                            "description": "Alle zijden van het doek krijgen dezelfde afwerking.",
                            "value": null,
                            "code": "finishing-all-sides",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/72/99e39932389f5591.svg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Per zijde verschillend",
                            "description": "Kies voor elke zijde de gewenste afwerking.",
                            "value": null,
                            "code": "finishing-per-side",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/93/f2fca3118a52a38d.svg"
                                }
                            ]
                        }
                    ]
                }
            ],
            "selected_options": [
                {
                    "type_code": "width",
                    "name": "Breedte",
                    "description": null,
                    "value": "200",
                    "code": "width",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "height",
                    "name": "Hoogte",
                    "description": null,
                    "value": "100",
                    "code": "height",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "amount",
                    "name": "Hoeveelheid",
                    "description": null,
                    "value": "1",
                    "code": "amount",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "amount",
                    "images": []
                }
            ]
        }
    ]
}

Step 3 - Finishing all sided

Payload:

{  
    "products": [
        {
            "code": "banner-510",
            "options": [
                {
                    "code": "width",
                    "value": "40"
                },
                {
                    "code": "height",
                    "value": "60"
                },
                {
                    "code": "amount",
                    "value": "2"
                },
                {
                    "code": "finishing-all-sides"
                }

            ]
        }
    ]
}

Response:

{
    "status": "ok",
    "code": 200,
    "message": "Options calculated",
    "products": [
        {
            "code": "banner-510",
            "can_order": false,
            "amount": 2,
            "width": 40,
            "height": 60,
            "length": 0,
            "available_options": [
                {
                    "code": "finishing",
                    "can_order": null,
                    "amount": null,
                    "width": null,
                    "height": null,
                    "length": null,
                    "children": [
                        {
                            "type_code": "radio",
                            "name": "Snijden",
                            "description": "We snijden het doek uit op het gewenste formaat.",
                            "value": null,
                            "code": "cut",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": true,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/74/6f7a271da0ab0f87.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Contoursnijden",
                            "description": "We snijden het doek in de gewenste vorm op basis van de cutcontour(en) in het bestand.",
                            "value": null,
                            "code": "cut-contour",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201805/1381/d7fed5de59c061c8.svg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Ringen",
                            "description": "Het doek wordt voorzien van ringen. Kies zelf de positie van de ringen.",
                            "value": null,
                            "code": "rings",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/75/eda459ecce5ac871.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Zomen",
                            "description": "Het doek krijgt een zoom van 4 cm. De zoom wordt met hitte gelast.",
                            "value": null,
                            "code": "hem",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": true,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/83/8a04d9b8bf62350d.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Zomen en ringen",
                            "description": "Voor de bevestiging krijgt het doek rondom een zoom van 4 cm en ringen van nikkel. De zoom wordt met hitte gelast.",
                            "value": null,
                            "code": "hem-and-rings",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/84/af0c678a9f4c4248.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Zomen en ringen voor Stormfix",
                            "description": "Het doek krijgt rondom een zoom van 4 cm en ringen van nikkel voor Stormfix spanners. De zoom wordt met hitte gelast.",
                            "value": null,
                            "code": "hem-and-rings-stormfix",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/85/02116c2407e33cbf.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Klittenband",
                            "description": "Voor de bevestiging stikken we klittenband op het doek. Je kiest zelf de positie van het klittenband en of je wit of zwart klittenband aan voor- of achterzijde wilt.",
                            "value": null,
                            "code": "velcro",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": false,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201803/166/f5b10c35485e6064.jpg"
                                }
                            ]
                        },
                        {
                            "type_code": "radio",
                            "name": "Ronde pees (wit)",
                            "description": "We werken het doek af met een ronde siliconen pees van 7 mm voor bevestiging in een frame.",
                            "value": null,
                            "code": "round-tendon",
                            "default_value": null,
                            "min_value": null,
                            "max_value": null,
                            "step_size": null,
                            "scale": null,
                            "reversible": null,
                            "last_option": true,
                            "images": [
                                {
                                    "language": "all",
                                    "url": "https://cdn.print-uploader.com/201901/1794/c36a00ab3c6c0558.jpg"
                                }
                            ]
                        }
                    ]
                }
            ],
            "selected_options": [
                {
                    "type_code": "width",
                    "name": "Breedte",
                    "description": null,
                    "value": "40",
                    "code": "width",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "height",
                    "name": "Hoogte",
                    "description": null,
                    "value": "60",
                    "code": "height",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "amount",
                    "name": "Hoeveelheid",
                    "description": null,
                    "value": "2",
                    "code": "amount",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "amount",
                    "images": []
                },
                {
                    "type_code": "radio",
                    "name": "Voor alle zijden gelijk",
                    "description": "Alle zijden van het doek krijgen dezelfde afwerking.",
                    "value": null,
                    "code": "finishing-all-sides",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "finishing-per-side-all-sides",
                    "images": [
                        {
                            "language": "all",
                            "url": "https://cdn.print-uploader.com/201803/72/99e39932389f5591.svg"
                        }
                    ]
                }
            ]
        }
    ]
}

Step 4 - Cut all sides (CONFIGURATION COMPLETED)

Payload:

{  
    "products": [
        {
            "code": "banner-510",
            "options": [
                {
                    "code": "width",
                    "value": "40"
                },
                {
                    "code": "height",
                    "value": "60"
                },
                {
                    "code": "amount",
                    "value": "2"
                },
                {
                    "code": "finishing-all-sides"
                },
                {
                    "code": "cut"
                }

            ]
        }
    ]
}

Response:

{
    "status": "ok",
    "code": 200,
    "message": "Options calculated",
    "products": [
        {
            "code": "banner-510",
            "can_order": true,
            "amount": 2,
            "width": 40,
            "height": 60,
            "length": 0,
            "available_options": [],
            "selected_options": [
                {
                    "type_code": "width",
                    "name": "Breedte",
                    "description": null,
                    "value": "40",
                    "code": "width",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "height",
                    "name": "Hoogte",
                    "description": null,
                    "value": "60",
                    "code": "height",
                    "default_value": null,
                    "min_value": "0.00",
                    "max_value": "99999.00",
                    "step_size": null,
                    "scale": 1,
                    "reversible": true,
                    "parent_code": "size",
                    "images": []
                },
                {
                    "type_code": "amount",
                    "name": "Hoeveelheid",
                    "description": null,
                    "value": "2",
                    "code": "amount",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "amount",
                    "images": []
                },
                {
                    "type_code": "radio",
                    "name": "Voor alle zijden gelijk",
                    "description": "Alle zijden van het doek krijgen dezelfde afwerking.",
                    "value": null,
                    "code": "finishing-all-sides",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "finishing-per-side-all-sides",
                    "images": [
                        {
                            "language": "all",
                            "url": "https://cdn.print-uploader.com/201803/72/99e39932389f5591.svg"
                        }
                    ]
                },
                {
                    "type_code": "radio",
                    "name": "Snijden",
                    "description": "We snijden het doek uit op het gewenste formaat.",
                    "value": null,
                    "code": "cut",
                    "default_value": null,
                    "min_value": null,
                    "max_value": null,
                    "step_size": null,
                    "scale": null,
                    "reversible": null,
                    "parent_code": "finishing",
                    "images": [
                        {
                            "language": "all",
                            "url": "https://cdn.print-uploader.com/201803/74/6f7a271da0ab0f87.jpg"
                        }
                    ]
                }
            ],
            "upload": true,
            "uploaders": [
                {
                    "type": "single",
                    "amount": 2,
                    "width": 40,
                    "height": 60,
                    "length": 0,
                    "minimal_dpi": 72,
                    "mirror_enabled": true,
                    "fill_enabled": true,
                    "rotation_enabled": true,
                    "file_limit": null,
                    "require_white_spot": false,
                    "required_cut_names": [],
                    "optional_cut_names": [],
                    "tiling_enabled": true,
                    "tiling_mandatory": false,
                    "tiling_direction": null,
                    "max_width_excl_overlap": 494,
                    "max_height_excl_overlap": 4700,
                    "max_width_incl_overlap": 490,
                    "max_height_incl_overlap": 4696,
                    "bleed_top": 1,
                    "bleed_right": 1,
                    "bleed_bottom": 1,
                    "bleed_left": 1
                }
            ],
            "linked_products": [
                {
                    "title": "Banner 510",
                    "description": null,
                    "code": "banner-510",
                    "article_group_code": "MA",
                    "unit_code": "m2",
                    "shipping_weight": 0.75
                }
            ],
            "prices_total": {
                "18": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "24": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "48": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "72": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "96": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "120": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "144": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "168": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "192": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "216": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "240": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "264": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "288": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "312": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "336": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "360": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "384": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": ,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "408": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "432": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0 ,
                    "sales_price_incl_vat": 0.0
                },
                "456": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                },
                "480": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.00,
                    "sales_price": 0.0,
                    "sales_price_incl_vat": 0.0
                }
            },
            "prices_per_product": {
                "18": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "24": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "48": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "72": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "96": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "120": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "144": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "168": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "192": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "216": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat":0.0000
                },
                "240": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "264": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 4.05,
                    "sales_price_incl_vat": 0.0000
                },
                "288": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "312": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "336": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "360": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "384": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "408": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "432": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "456": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                },
                "480": {
                    "purchase_price": 0.00,
                    "purchase_price_incl_vat": 0.0000,
                    "sales_price": 0.00,
                    "sales_price_incl_vat": 0.0000
                }
            }
        }
    ],
    "calculation_id": 6779185
}

Reviews