Create new product | Moov Documentation
Create new product
Creates a new product for the specified account.
POST
/accounts/{accountID}/products
Request Example
curl -X POST "https://api.moov.io/accounts/{accountID}/products" \
-H "Authorization: Bearer {token}" \
-H "X-Moov-Version: v2026.07.00" \
-d '{
"title": "World'\"s best lemonade",
"description": "Really, the best.",
"basePrice": {
"valueDecimal": "4.99",
"currency": "USD"
},
"images": [
{
"imageID": "fed91252-6f48-4b70-885e-520bf53a52ff"
},
{
"imageID": "eb466644-0a58-4b87-af1e-94d03e223ad2"
}
],
"optionGroups": [
{
"name": "Flavor add-ins",
"description": "Choose up to 3 flavor add-ins to enhance your lemonade.",
"minSelect": 0,
"maxSelect": 3,
"options": [
{
"name": "Strawberry puree",
"description": "Fresh and fruity.",
"priceModifier": {
"valueDecimal": "0.99",
"currency": "USD"
},
"images": [
{
"imageID": "d359808d-9896-4414-8d17-dac43f35842d"
}
]
},
{
"name": "Passionfruit syrup",
"priceModifier": {
"valueDecimal": "0.49",
"currency": "USD"
}
},
{
"name": "Cherry syrup",
"priceModifier": {
"valueDecimal": "0.49",
"currency": "USD"
}
}
]
},
{
"name": "Sweetener",
"description": "Choose a sweetener for your lemonade.",
"minSelect": 1,
"maxSelect": 1,
"options": [
{
"name": "Cane Sugar"
},
{
"name": "Honey",
"priceModifier": {
"valueDecimal": "0.99",
"currency": "USD"
}
},
{
"name": "Stevia",
"description": "Natural, zero-calorie sweetener."
}
]
}
]
}'
Request Code Snippets
TypeScript
import { Moov } from "@moovio/sdk";
const moov = new Moov({
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.products.create({
accountID: "27cd3181-7c1c-4d81-b020-e7d55c33941f",
productRequest: {
title: "World's best lemonade",
description: "Really, the best.",
basePrice: {
currency: "USD",
valueDecimal: "4.99",
},
images: [
{
imageID: "fed91252-6f48-4b70-885e-520bf53a52ff",
},
{
imageID: "eb466644-0a58-4b87-af1e-94d03e223ad2",
},
],
optionGroups: [
{
name: "Flavor add-ins",
description: "Choose up to 3 flavor add-ins to enhance your lemonade.",
minSelect: 0,
maxSelect: 3,
options: [
{
name: "Strawberry puree",
description: "Fresh and fruity.",
priceModifier: {
currency: "USD",
valueDecimal: "0.99",
},
images: [
{
imageID: "d359808d-9896-4414-8d17-dac43f35842d",
},
],
},
{
name: "Passionfruit syrup",
priceModifier: {
currency: "USD",
valueDecimal: "0.49",
},
},
{
name: "Cherry syrup",
priceModifier: {
currency: "USD",
valueDecimal: "0.49",
},
},
],
},
{
name: "Sweetener",
description: "Choose a sweetener for your lemonade.",
minSelect: 1,
maxSelect: 1,
options: [
{
name: "Cane Sugar",
},
{
name: "Honey",
priceModifier: {
currency: "USD",
valueDecimal: "0.99",
},
},
{
name: "Stevia",
description: "Natural, zero-calorie sweetener.",
},
],
},
],
},
});
console.log(result);
}
run();
PHP
declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\