Magento API

SOAP

About Magento API

Module: Complex Product API

Resource: product_custom_option_value

Method:
  • product_custom_option_value.update (SOAP V1)
  • catalogProductCustomOptionValueUpdate (SOAP V2)

Allows you to update the product custom option value.

Arguments:

Type Name Description
string sessionId Session ID
string
valueId Value ID
array data Array of catalogProductCustomOptionValueUpdateEntity
string storeId Store view ID or code (optional)

Return:

Type Description
boolean True if the custom option value is updated

The catalogProductCustomOptionValueUpdateEntity content is as follows:

Type Name Description
string title
Option value title
string
price
Option value price
string
price_type
Price type. Possible values are as follows: "fixed" or "percent"
string
sku
Custom option value row SKU
string
sort_order
Custom option value sort order

Faults:

Fault Code Fault Message
101 Option value with requested id does not exist.
103 Option with requested id does not exist.
104 Invalid option type.
107 Error while updating an option value. Details are in the error message.
108 Title field is required.

Examples

Request Example SOAP V1
$proxy = new SoapClient('http://magentohost/api/soap/?wsdl');
$sessionId = $proxy->login('apiUser', 'apiKey');

$productOptionId = 1;// Existing option ID

// Get last value from option values list
$optionValues = $proxy->call($sessionId, "product_custom_option_value.list", array($productOptionId));
$optionValue = reset($optionValues);
$valueId = $optionValue['value_id'];
// Update custom option value
$customOptionValue = array(
    "title" => "new title",
    "price" => 12.00,
    "price_type" => "percent",
    "sku" => "custom_text_option_2",
    "sort_order" => 2
);
$resultCustomOptionValueUpdate = $proxy->call(
    $sessionId,
    "product_custom_option_value.update",
    array(
         $valueId,
         $customOptionValue
    )
);
Request Example SOAP V2
$proxy = new SoapClient('http://magentohost/api/v2_soap/?wsdl');

$sessionId = $proxy->login('apiUser', 'apiKey');

$result = $proxy->catalogProductCustomOptionValueUpdate($sessionId, '2', array(
'title' => 'value',
'price' => '20',
'price_type' => 'fixed',
'sku' => 'sku'
));

var_dump($result);
Request Example SOAP V2 (WS-I Compliance Mode)
$proxy = new SoapClient('http://magentohost/api/v2_soap/?wsdl');

$sessionId = $proxy->login((object)array('username' => 'apiUser', 'apiKey' => 'apiKey'));

$result = $proxy->catalogProductCustomOptionValueUpdate((object)array('sessionId' => $sessionId->result, 'valueId' => '2', 'data' => ((object)array(
'title' => 'value',
'sku' => 'sku',
'price' => '199',
'price_type' => 'percent'
))));

var_dump($result->result);