Table of Contents

uMarketplace Headless API

Get list of Vendors (possible to filter)

In order to get list of vendors perform /V1/udapi/vendors GET API call. It expect searchCriteria as parameter. More details on how to construct the filter check can be found here http://devdocs.magento.com/guides/v2.1/rest/performing-searches.html

Example:

GET http://magento233.loc/rest/V1/udapi/vendors?searchCriteria=[]

RESPONSE

{
    "items": [
        {
            "vendor_id": 1,
            "vendor_name": "vendor1",
            "vendor_attn": "",
            "email": "testv1@example.com",
            "telephone": "4025555555",
            "fax": null,
            "street_full": "1234 Test",
            "street1": "1234 Test",
            "street2": "",
            "city": "los angeles",
            "zip": "90210",
            "country_id": "US",
            "region_id": "12",
            "region": null,
            "region_code": "CA",
            "billing_use_shipping": "1",
            "billing_telephone": "4025555555",
            "billing_fax": null,
            "billing_street_full": "",
            "billing_street1": "",
            "billing_street2": "",
            "billing_city": "",
            "billing_zip": null,
            "billing_country_id": "",
            "billing_region_id": null,
            "billing_region": null,
            "billing_region_code": null,
            "status": 0,
            "carrier_code": "flatrate",
            "url_key": "vendor1",
            "created_at": null,
            "vacation_mode": 0,
            "vacation_end": null,
            "vacation_message": null,
            "account_type": null,
            "is_featured": 0,
            "rating_summary": null
        },
        {
            "vendor_id": 2,
            "vendor_name": "vendor2",
            "vendor_attn": "",
            "email": "testv2@example.com",
            "telephone": "4025555555",
            "fax": null,
            "street_full": "14 elmwood st ne",
            "street1": "14 elmwood st ne",
            "street2": "",
            "city": "rome",
            "zip": "30161",
            "country_id": "US",
            "region_id": "19",
            "region": null,
            "region_code": "GA",
            "billing_use_shipping": "1",
            "billing_telephone": "4025555555",
            "billing_fax": null,
            "billing_street_full": "",
            "billing_street1": "",
            "billing_street2": "",
            "billing_city": "",
            "billing_zip": null,
            "billing_country_id": "",
            "billing_region_id": null,
            "billing_region": null,
            "billing_region_code": null,
            "status": 0,
            "carrier_code": "flatrate",
            "url_key": "vendor2",
            "created_at": null,
            "vacation_mode": 0,
            "vacation_end": null,
            "vacation_message": null,
            "account_type": null,
            "is_featured": 0,
            "rating_summary": null
        }
    ],
    "search_criteria": {
        "filter_groups": []
    },
    "total_count": 2
}

Get Single Vendor Info

In order to get single Vendor information perform /V1/udapi/vendor/info/:id GET API call. :id parameter could be either vendor entity id or his name.

Example:

GET http://magento233.loc/rest/V1/udapi/vendor/info/1

RESPONSE

{
    "vendor_id": 1,
    "vendor_name": "vendor1",
    "vendor_attn": "",
    "email": "testv1@example.com",
    "telephone": "4025555555",
    "fax": null,
    "street_full": "1234 Test",
    "street1": "1234 Test",
    "street2": "",
    "city": "los angeles",
    "zip": "90210",
    "country_id": "US",
    "region_id": "12",
    "region": null,
    "region_code": "CA",
    "billing_use_shipping": "1",
    "billing_telephone": "4025555555",
    "billing_fax": null,
    "billing_street_full": "",
    "billing_street1": "",
    "billing_street2": "",
    "billing_city": "",
    "billing_zip": null,
    "billing_country_id": "",
    "billing_region_id": null,
    "billing_region": null,
    "billing_region_code": null,
    "status": 0,
    "carrier_code": "flatrate",
    "url_key": "vendor1",
    "created_at": null,
    "vacation_mode": 0,
    "vacation_end": null,
    "vacation_message": null,
    "account_type": null,
    "is_featured": 0,
    "rating_summary": null
}

Get list of Vendor Products (possible to filter)

In order to get list of vendors products perform /V1/udapi/products/:id GET API call. :id parameter could be either vendor entity id or his name. It expect searchCriteria as parameter. More details on how to construct the filter check can be found here http://devdocs.magento.com/guides/v2.1/rest/performing-searches.html

Example:

GET http://magento233.loc/rest/V1/udapi/vendor/products/1?searchCriteria=[]

RESPONSE

{
"items": [
    {
        "id": 13,
        "sku": "24-WB07",
        "name": "Overnight Duffle",
        "attribute_set_id": 15,
        "price": 45,
        "status": 1,
        "visibility": 4,
        "type_id": "simple",
        "created_at": "2019-10-17 19:09:56",
        "updated_at": "2019-10-23 21:06:55",
        "weight": 1,
        "extension_attributes": {
            "website_ids": [
                1
            ],
            "category_links": [
                {
                    "position": 0,
                    "category_id": "3"
                },
                {
                    "position": 0,
                    "category_id": "7"
                },
                {
                    "position": 0,
                    "category_id": "4"
                },
                {
                    "position": 0,
                    "category_id": "8"
                }
            ]
        },
        "product_links": [
            {
                "sku": "24-WB07",
                "link_type": "crosssell",
                "linked_product_sku": "24-WG085_Group",
                "linked_product_type": "grouped",
                "position": 1
            },
            {
                "sku": "24-WB07",
                "link_type": "crosssell",
                "linked_product_sku": "24-WG083-blue",
                "linked_product_type": "simple",
                "position": 2
            },
            {
                "sku": "24-WB07",
                "link_type": "crosssell",
                "linked_product_sku": "24-UG06",
                "linked_product_type": "simple",
                "position": 3
            },
            {
                "sku": "24-WB07",
                "link_type": "crosssell",
                "linked_product_sku": "24-UG02",
                "linked_product_type": "simple",
                "position": 4
            },
            {
                "sku": "24-WB07",
                "link_type": "upsell",
                "linked_product_sku": "24-MB02",
                "linked_product_type": "simple",
                "position": 1
            },
            {
                "sku": "24-WB07",
                "link_type": "upsell",
                "linked_product_sku": "24-UB02",
                "linked_product_type": "simple",
                "position": 2
            }
        ],
        "options": [],
        "media_gallery_entries": [
            {
                "id": 17,
                "media_type": "image",
                "label": "Image",
                "position": 1,
                "disabled": false,
                "types": [
                    "image",
                    "small_image",
                    "thumbnail"
                ],
                "file": "/w/b/wb07-brown-0.jpg"
            }
        ],
        "tier_prices": [],
        "custom_attributes": [
            {
                "attribute_code": "image",
                "value": "/w/b/wb07-brown-0.jpg"
            },
            {
                "attribute_code": "udtiership_use_custom",
                "value": "0"
            },
            {
                "attribute_code": "small_image",
                "value": "/w/b/wb07-brown-0.jpg"
            },
            {
                "attribute_code": "thumbnail",
                "value": "/w/b/wb07-brown-0.jpg"
            },
            {
                "attribute_code": "options_container",
                "value": "container2"
            },
            {
                "attribute_code": "msrp_display_actual_price_type",
                "value": "0"
            },
            {
                "attribute_code": "url_key",
                "value": "overnight-duffle"
            },
            {
                "attribute_code": "gift_message_available",
                "value": "0"
            },
            {
                "attribute_code": "required_options",
                "value": "0"
            },
            {
                "attribute_code": "has_options",
                "value": "0"
            },
            {
                "attribute_code": "image_label",
                "value": "Image"
            },
            {
                "attribute_code": "small_image_label",
                "value": "Image"
            },
            {
                "attribute_code": "thumbnail_label",
                "value": "Image"
            },
            {
                "attribute_code": "tax_class_id",
                "value": "2"
            },
            {
                "attribute_code": "ts_packaging_type",
                "value": "none"
            },
            {
                "attribute_code": "category_ids",
                "value": [
                    "3",
                    "7",
                    "4",
                    "8"
                ]
            },
            {
                "attribute_code": "description",
                "value": "<p>For long weekends away, camping outings and business trips, the Overnight Duffle can't be beat. The dual handles make it a cinch to carry, while the durable waterproof exterior helps you worry less about the weather. With multiple organizational pockets inside and out, it's the perfect travel companion.</p>\r\n<ul>\r\n<li>Dual top handles.</li>\r\n<li>W 15\" x H 15\" x D 9\".</li>\r\n</ul>"
            },
            {
                "attribute_code": "activity",
                "value": "5446,5449"
            },
            {
                "attribute_code": "style_bags",
                "value": "5453"
            },
            {
                "attribute_code": "material",
                "value": "5462,5464,5465"
            },
            {
                "attribute_code": "color",
                "value": "5476"
            },
            {
                "attribute_code": "strap_bags",
                "value": "5491"
            },
            {
                "attribute_code": "features_bags",
                "value": "5501,5506"
            },
            {
                "attribute_code": "eco_collection",
                "value": "0"
            },
            {
                "attribute_code": "performance_fabric",
                "value": "0"
            },
            {
                "attribute_code": "erin_recommends",
                "value": "0"
            },
            {
                "attribute_code": "new",
                "value": "1"
            },
            {
                "attribute_code": "sale",
                "value": "0"
            },
            {
                "attribute_code": "udropship_calculate_rates",
                "value": "0"
            },
            {
                "attribute_code": "udropship_vendor",
                "value": "1"
            }
        ]
    },
    {
        "id": 14,
        "sku": "24-WB04",
        "name": "Push It Messenger Bag",
        "attribute_set_id": 15,
        "price": 45,
        "status": 1,
        "visibility": 4,
        "type_id": "simple",
        "created_at": "2019-10-17 19:09:56",
        "updated_at": "2019-10-30 08:58:59",
        "weight": 1,
        "extension_attributes": {
            "website_ids": [
                1
            ],
            "category_links": [
                {
                    "position": 0,
                    "category_id": "3"
                },
                {
                    "position": 0,
                    "category_id": "7"
                },
                {
                    "position": 0,
                    "category_id": "4"
                }
            ]
        },
        "product_links": [
            {
                "sku": "24-WB04",
                "link_type": "crosssell",
                "linked_product_sku": "24-WG082-pink",
                "linked_product_type": "simple",
                "position": 1
            },
            {
                "sku": "24-WB04",
                "link_type": "crosssell",
                "linked_product_sku": "24-UG05",
                "linked_product_type": "simple",
                "position": 2
            },
            {
                "sku": "24-WB04",
                "link_type": "crosssell",
                "linked_product_sku": "24-UG02",
                "linked_product_type": "simple",
                "position": 3
            },
            {
                "sku": "24-WB04",
                "link_type": "crosssell",
                "linked_product_sku": "24-UG06",
                "linked_product_type": "simple",
                "position": 4
            },
            {
                "sku": "24-WB04",
                "link_type": "upsell",
                "linked_product_sku": "24-MB02",
                "linked_product_type": "simple",
                "position": 1
            },
            {
                "sku": "24-WB04",
                "link_type": "upsell",
                "linked_product_sku": "24-UB02",
                "linked_product_type": "simple",
                "position": 2
            }
        ],
        "options": [],
        "media_gallery_entries": [
            {
                "id": 18,
                "media_type": "image",
                "label": "Image",
                "position": 1,
                "disabled": false,
                "types": [
                    "image",
                    "small_image",
                    "thumbnail"
                ],
                "file": "/w/b/wb04-blue-0.jpg"
            }
        ],
        "tier_prices": [
            {
                "customer_group_id": 32000,
                "qty": 5,
                "value": 40.5,
                "extension_attributes": {
                    "percentage_value": 10,
                    "website_id": 0
                }
            },
            {
                "customer_group_id": 32000,
                "qty": 10,
                "value": 38.25,
                "extension_attributes": {
                    "percentage_value": 15,
                    "website_id": 0
                }
            }
        ],
        "custom_attributes": [
            {
                "attribute_code": "image",
                "value": "/w/b/wb04-blue-0.jpg"
            },
            {
                "attribute_code": "udtiership_use_custom",
                "value": "0"
            },
            {
                "attribute_code": "small_image",
                "value": "/w/b/wb04-blue-0.jpg"
            },
            {
                "attribute_code": "thumbnail",
                "value": "/w/b/wb04-blue-0.jpg"
            },
            {
                "attribute_code": "options_container",
                "value": "container2"
            },
            {
                "attribute_code": "msrp_display_actual_price_type",
                "value": "0"
            },
            {
                "attribute_code": "url_key",
                "value": "push-it-messenger-bag"
            },
            {
                "attribute_code": "gift_message_available",
                "value": "0"
            },
            {
                "attribute_code": "required_options",
                "value": "0"
            },
            {
                "attribute_code": "has_options",
                "value": "0"
            },
            {
                "attribute_code": "image_label",
                "value": "Image"
            },
            {
                "attribute_code": "small_image_label",
                "value": "Image"
            },
            {
                "attribute_code": "thumbnail_label",
                "value": "Image"
            },
            {
                "attribute_code": "tax_class_id",
                "value": "2"
            },
            {
                "attribute_code": "ts_packaging_type",
                "value": "none"
            },
            {
                "attribute_code": "category_ids",
                "value": [
                    "3",
                    "7",
                    "4"
                ]
            },
            {
                "attribute_code": "description",
                "value": "<p>The name says so, but the Push It Messenger Bag is much more than a busy commuter's tote. It's a closet away from home when you're pedaling from class or work to gym and back or home again. It's the perfect size and shape for laptop, folded clothes, even extra shoes.</p>\r\n<ul>\r\n<li>Adjustable crossbody strap.</li>\r\n<li>Top handle.</li>\r\n<li>Zippered interior pocket.</li>\r\n<li>Secure clip closures.</li>\r\n<li>Durable fabric construction.</li>\r\n</ul>"
            },
            {
                "attribute_code": "activity",
                "value": "5447,5450,5435"
            },
            {
                "attribute_code": "style_bags",
                "value": "5454,5455"
            },
            {
                "attribute_code": "material",
                "value": "5464,5465"
            },
            {
                "attribute_code": "color",
                "value": "5476"
            },
            {
                "attribute_code": "strap_bags",
                "value": "5488,5489,5490,5492,5493,5494"
            },
            {
                "attribute_code": "features_bags",
                "value": "5501,5502,5505,5506"
            },
            {
                "attribute_code": "eco_collection",
                "value": "0"
            },
            {
                "attribute_code": "performance_fabric",
                "value": "1"
            },
            {
                "attribute_code": "erin_recommends",
                "value": "0"
            },
            {
                "attribute_code": "new",
                "value": "0"
            },
            {
                "attribute_code": "sale",
                "value": "0"
            },
            {
                "attribute_code": "udropship_calculate_rates",
                "value": "0"
            },
            {
                "attribute_code": "udropship_vendor",
                "value": "1"
            }
        ]
    }
],
"search_criteria": {
    "filter_groups": []
},
"total_count": 2
}

Get vendor reviews (possible to filter)

In order to get vendor reviews perform /V1/udapi/vendor/reviews/:id GET API call. :id parameter could be either vendor entity id or his name. It expect searchCriteria as parameter. More details on how to construct the filter check can be found here http://devdocs.magento.com/guides/v2.1/rest/performing-searches.html

Example:

GET http://magento.loc/rest/V1/udapi/vendor/reviews/1?searchCriteria=[]

RESPONSE

{
    "items": [
        {
            "detail": "000000003 v1 desc",
            "nickname": "Veronica",
            "created_at": "2019-11-01 07:22:19",
            "rating_votes": [
                {
                    "rating_code": "Shipping and handling charges",
                    "is_aggregate": 1,
                    "percent": 60,
                    "value": 3
                },
                {
                    "rating_code": "Communication",
                    "is_aggregate": 1,
                    "percent": 80,
                    "value": 4
                },
                {
                    "rating_code": "Shipping time",
                    "is_aggregate": 1,
                    "percent": 80,
                    "value": 4
                },
                {
                    "rating_code": "Was delivery on time?",
                    "is_aggregate": 0,
                    "percent": 0,
                    "value": 0
                },
                {
                    "rating_code": "Merchandise in good condition?",
                    "is_aggregate": 0,
                    "percent": 20,
                    "value": 1
                }
            ]
        },
        {
            "detail": "000000006 v1 desc",
            "nickname": "Veronica",
            "created_at": "2019-11-01 07:22:53",
            "rating_votes": [
                {
                    "rating_code": "Shipping time",
                    "is_aggregate": 1,
                    "percent": 100,
                    "value": 5
                },
                {
                    "rating_code": "Shipping and handling charges",
                    "is_aggregate": 1,
                    "percent": 100,
                    "value": 5
                },
                {
                    "rating_code": "Communication",
                    "is_aggregate": 1,
                    "percent": 80,
                    "value": 4
                },
                {
                    "rating_code": "Was delivery on time?",
                    "is_aggregate": 0,
                    "percent": 20,
                    "value": 1
                },
                {
                    "rating_code": "Merchandise in good condition?",
                    "is_aggregate": 0,
                    "percent": 20,
                    "value": 1
                }
            ]
        }
    ]
}

Get product offers from multiple vendors

In order to get offers from multiple vendors perform /V1/udapi/vendor/product-offers/:sku GET API call. :sku parameter should be product's sku.

Example:

GET http://magento.loc/rest/V1/udapi/vendor/product-offers/24-WB04

RESPONSE

{
    "items": [
        {
            "vendor_product_id": 14,
            "vendor_id": 1,
            "product_id": 14,
            "priority": 1,
            "vendor_sku": "v1-24-WB04",
            "vendor_cost": null,
            "stock_qty": 22,
            "backorders": -1,
            "status": 1,
            "shipping_price": null,
            "vendor_title": null,
            "state": "new",
            "state_descr": null,
            "freeshipping": 0,
            "vendor_price": 46.77,
            "special_price": null,
            "special_from_date": null,
            "special_to_date": null
        },
        {
            "vendor_product_id": 2061,
            "vendor_id": 2,
            "product_id": 14,
            "priority": 2,
            "vendor_sku": "v2-24-WB04",
            "vendor_cost": null,
            "stock_qty": 33,
            "backorders": -1,
            "status": 1,
            "shipping_price": null,
            "vendor_title": null,
            "state": "new",
            "state_descr": null,
            "freeshipping": 0,
            "vendor_price": 49.27,
            "special_price": null,
            "special_from_date": null,
            "special_to_date": null
        }
    ],
    "search_criteria": null,
    "total_count": 2
}

Get product questions to vendors (possible to filter)

In order to get product questions to vendors perform /V1/udapi/vendor/product-questions/:sku GET API call. :sku parameter should be product's sku. It expect searchCriteria as parameter. More details on how to construct the filter check can be found here http://devdocs.magento.com/guides/v2.1/rest/performing-searches.html

Example:

GET http://magento233.loc/rest/V1/udapi/vendor/product-questions/24-WB07?searchCriteria=[]

RESPONSE

{
    "items": [
        {
            "question_text": "question 1",
            "answer_text": "answer 1",
            "customer_name": "test 1",
            "vendor_id": 1,
            "vendor_name": "vendor1",
            "visibility": 1,
            "question_date": "2019-11-01 09:32:18",
            "answer_date": "2019-11-01 09:36:47"
        },
        {
            "question_text": "question 2",
            "answer_text": "answer 2",
            "customer_name": "test 2",
            "vendor_id": 2,
            "vendor_name": "vendor2",
            "visibility": 1,
            "question_date": "2019-11-01 09:35:34",
            "answer_date": "2019-11-01 09:36:30"
        },
        {
            "question_text": "question 3",
            "answer_text": "answer 3",
            "customer_name": "test 3",
            "vendor_id": 1,
            "vendor_name": "vendor1",
            "visibility": 1,
            "question_date": "2019-11-01 09:35:54",
            "answer_date": "2019-11-01 09:36:38"
        }
    ]
}

Ask product question to vendor

In order to create new question to vendors perform /V1/udapi/vendor/product-question-ask/:id/:sku POST API call. :id parameter could be either vendor entity id or his name. :sku parameter should be product's sku. Other parameters are: name - customer name, question - question text, visibility - 0 / Private or 1 / Public

Example:

POST http://magento233.loc/rest/V1/udapi/vendor/product-question-ask/1/24-WB07
{"email":"testapi@example.com","name":"api customer","question":"api question 1","visibility":1}

RESPONSE

true