{
  "info": {
    "name": "Product APIs",
    "description": "Postman collection for admin product APIs: create simple, create advanced, update simple, update advanced, copy, and product variations.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{token}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "base_url",
      "value": "http://localhost/glob/Code/html2/public"
    },
    {
      "key": "token",
      "value": ""
    },
    {
      "key": "product_id",
      "value": "1"
    },
    {
      "key": "attribute_family_id",
      "value": "1"
    },
    {
      "key": "inventory_source_id",
      "value": "1"
    },
    {
      "key": "variation_attribute_id",
      "value": "1"
    },
    {
      "key": "variation_option_id",
      "value": "1"
    }
  ],
  "item": [
    {
      "name": "Auth",
      "item": [
        {
          "name": "Admin Login",
          "request": {
            "auth": {
              "type": "noauth"
            },
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"email\": \"admin@example.com\",\n  \"password\": \"password\",\n  \"device_name\": \"postman\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/login",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "login"
              ]
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Products",
      "item": [
        {
          "name": "List Products",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Get Product",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/{{product_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "{{product_id}}"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Get Product Attributes",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products-attributes/{{product_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products-attributes",
                "{{product_id}}"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Create Base Product",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"type\": \"simple\",\n  \"attribute_family_id\": {{attribute_family_id}},\n  \"sku\": \"api-base-{{$timestamp}}\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Create Simple Product",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"type\": \"simple\",\n  \"attribute_family_id\": {{attribute_family_id}},\n  \"name\": \"API Simple Product\",\n  \"description\": \"Created from Postman simple API.\",\n  \"price\": 99.5,\n  \"qty\": 10,\n  \"inventory_source_id\": {{inventory_source_id}},\n  \"status\": 1,\n  \"visible_individually\": 1\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/create-simple",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "create-simple"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Create Advanced Product",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"type\": \"simple\",\n  \"attribute_family_id\": {{attribute_family_id}},\n  \"sku\": \"{{$timestamp}}\",\n  \"name\": \"API Advanced Product\",\n  \"description\": \"Created from Postman advanced API.\",\n  \"short_description\": \"Short API description\",\n  \"url_key\": \"{{$timestamp}}\",\n  \"price\": 150,\n  \"weight\": 1,\n  \"status\": 1,\n  \"visible_individually\": 1,\n  \"new\": 1,\n  \"featured\": 1,\n  \"qty\": 20,\n  \"inventory_source_id\": {{inventory_source_id}},\n  \"categories\": []\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/create-advanced",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "create-advanced"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Update Product Full",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"sku\": \"updated-api-product\",\n  \"name\": \"Updated API Product\",\n  \"description\": \"Updated from full product API.\",\n  \"price\": 175,\n  \"weight\": 1,\n  \"status\": 1,\n  \"visible_individually\": 1,\n  \"inventories\": {\n    \"{{inventory_source_id}}\": 15\n  }\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/product-update/{{product_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "product-update",
                "{{product_id}}"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Update Simple Product",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Updated Simple API Product\",\n  \"description\": \"Simple update from Postman.\",\n  \"price\": 120,\n  \"qty\": 8,\n  \"inventory_source_id\": {{inventory_source_id}}\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/product-update-simple/{{product_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "product-update-simple",
                "{{product_id}}"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Update Advanced Product",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"sku\": \"advanced-updated-api-product\",\n  \"name\": \"Advanced Updated API Product\",\n  \"description\": \"Advanced update from Postman.\",\n  \"short_description\": \"Advanced short description\",\n  \"url_key\": \"advanced-updated-api-product\",\n  \"price\": 200,\n  \"weight\": 1,\n  \"status\": 1,\n  \"visible_individually\": 1,\n  \"inventories\": {\n    \"{{inventory_source_id}}\": 30\n  },\n  \"categories\": []\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/product-update-advanced/{{product_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "product-update-advanced",
                "{{product_id}}"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Copy Product",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/{{product_id}}/copy",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "{{product_id}}",
                "copy"
              ]
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Product Variations",
      "item": [
        {
          "name": "Get Product Variations",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/{{product_id}}/variations",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "{{product_id}}",
                "variations"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Get Variation Library",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/{{product_id}}/variation-library",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "{{product_id}}",
                "variation-library"
              ]
            }
          },
          "response": []
        },
        {
          "name": "Save Product Variations",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"attributes\": {\n    \"{{variation_attribute_id}}\": {\n      \"id\": {{variation_attribute_id}},\n      \"code\": \"size\",\n      \"admin_name\": \"size\"\n    }\n  },\n  \"variation\": [\n    {\n      \"sku\": \"variant-{{$timestamp}}-1\",\n      \"price\": 100,\n      \"special_price\": null,\n      \"special_price_from\": null,\n      \"special_price_to\": null,\n      \"status\": 1,\n      \"image_id\": null,\n      \"options\": [\n        {\n          \"attribute_id\": {{variation_attribute_id}},\n          \"option_id\": {{variation_option_id}},\n          \"option\": \"Default Option\"\n        }\n      ],\n      \"inventories\": {\n        \"{{inventory_source_id}}\": 5\n      }\n    }\n  ]\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/v1/admin/catalog/products/{{product_id}}/variation",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "v1",
                "admin",
                "catalog",
                "products",
                "{{product_id}}",
                "variation"
              ]
            }
          },
          "response": []
        }
      ]
    }
  ]
}
