<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 1.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../includes/main.css" type="text/css">
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
<title>Apache CloudStack | The Power Behind Your Cloud</title>
</head>
<body>
<div id="insidetopbg">
<div id="inside_wrapper">
<div class="uppermenu_panel">
<div class="uppermenu_box"></div>
</div>
<div id="main_master">
<div id="inside_header">
<div class="header_top">
<a class="cloud_logo" href="http://cloudstack.org"></a>
<div class="mainemenu_panel"></div>
</div>
</div>
<div id="main_content">
<div class="inside_apileftpanel">
<div class="inside_contentpanel" style="width:930px;">
<div class="api_titlebox">
<div class="api_titlebox_left">
<span>
						Apache CloudStack 4.13.0.0 Root Admin API Reference
					</span>
<p></p>
<h1>updateNetworkOffering</h1>
<p>Updates a network offering.</p>
</div>
<div class="api_titlebox_right">
<a class="api_backbutton" href="../index.html"></a>
</div>
</div>
<div class="api_tablepanel">
<h2>Request parameters</h2>
<table class="apitable">
<tr class="hed">
<td style="width:200px;"><strong>Parameter Name</strong></td><td style="width:500px;">Description</td><td style="width:180px;">Required</td>
</tr>
<tr>
<td style="width:200px;"><i>availability</i></td><td style="width:500px;"><i>the availability of network offering. Default value is Required for Guest Virtual network offering; Optional for Guest Direct network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>displaytext</i></td><td style="width:500px;"><i>the display text of the network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>domainid</i></td><td style="width:500px;"><i>the ID of the containing domain(s) as comma separated string, public for public offerings</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>id</i></td><td style="width:500px;"><i>the id of the network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>keepaliveenabled</i></td><td style="width:500px;"><i>if true keepalive will be turned on in the loadbalancer. At the time of writing this has only an effect on haproxy; the mode http and httpclose options are unset in the haproxy conf file.</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>maxconnections</i></td><td style="width:500px;"><i>maximum number of concurrent connections supported by the network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>name</i></td><td style="width:500px;"><i>the name of the network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>sortkey</i></td><td style="width:500px;"><i>sort key of the network offering, integer</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>state</i></td><td style="width:500px;"><i>update state for the network offering</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>tags</i></td><td style="width:500px;"><i>the tags for the network offering.</i></td><td style="width:180px;"><i>false</i></td>
</tr>
<tr>
<td style="width:200px;"><i>zoneid</i></td><td style="width:500px;"><i>the ID of the containing zone(s) as comma separated string, all for all zones offerings</i></td><td style="width:180px;"><i>false</i></td>
</tr>
</table>
</div>
<div class="api_tablepanel">
<h2>Response Tags</h2>
<table class="apitable">
<tr class="hed">
<td style="width:200px;"><strong>Response Name</strong></td><td style="width:500px;">Description</td>
</tr>
<tr>
<td style="width:200px;"><strong>id</strong></td><td style="width:500px;">the id of the network offering</td>
</tr>
<tr>
<td style="width:200px;"><strong>availability</strong></td><td style="width:500px;">availability of the network offering</td>
</tr>
<tr>
<td style="width:200px;"><strong>conservemode</strong></td><td style="width:500px;">true if network offering is ip conserve mode enabled</td>
</tr>
<tr>
<td style="width:200px;"><strong>created</strong></td><td style="width:500px;">the date this network offering was created</td>
</tr>
<tr>
<td style="width:200px;"><strong>details</strong></td><td style="width:500px;">additional key/value details tied with network offering</td>
</tr>
<tr>
<td style="width:200px;"><strong>displaytext</strong></td><td style="width:500px;">an alternate display text of the network offering.</td>
</tr>
<tr>
<td style="width:200px;"><strong>domain</strong></td><td style="width:500px;">the domain name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.</td>
</tr>
<tr>
<td style="width:200px;"><strong>domainid</strong></td><td style="width:500px;">the domain ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.</td>
</tr>
<tr>
<td style="width:200px;"><strong>egressdefaultpolicy</strong></td><td style="width:500px;">true if guest network default egress policy is allow; false if default egress policy is deny</td>
</tr>
<tr>
<td style="width:200px;"><strong>forvpc</strong></td><td style="width:500px;">true if network offering can be used by VPC networks only</td>
</tr>
<tr>
<td style="width:200px;"><strong>guestiptype</strong></td><td style="width:500px;">guest type of the network offering, can be Shared or Isolated</td>
</tr>
<tr>
<td style="width:200px;"><strong>isdefault</strong></td><td style="width:500px;">true if network offering is default, false otherwise</td>
</tr>
<tr>
<td style="width:200px;"><strong>ispersistent</strong></td><td style="width:500px;">true if network offering supports persistent networks, false otherwise</td>
</tr>
<tr>
<td style="width:200px;"><strong>maxconnections</strong></td><td style="width:500px;">maximum number of concurrents connections to be handled by lb</td>
</tr>
<tr>
<td style="width:200px;"><strong>name</strong></td><td style="width:500px;">the name of the network offering</td>
</tr>
<tr>
<td style="width:200px;"><strong>networkrate</strong></td><td style="width:500px;">data transfer rate in megabits per second allowed.</td>
</tr>
<tr>
<td style="width:200px;"><strong>serviceofferingid</strong></td><td style="width:500px;">the ID of the service offering used by virtual router provider</td>
</tr>
<tr>
<td style="width:200px;"><strong>specifyipranges</strong></td><td style="width:500px;">true if network offering supports specifying ip ranges, false otherwise</td>
</tr>
<tr>
<td style="width:200px;"><strong>specifyvlan</strong></td><td style="width:500px;">true if network offering supports vlans, false otherwise</td>
</tr>
<tr>
<td style="width:200px;"><strong>state</strong></td><td style="width:500px;">state of the network offering. Can be Disabled/Enabled/Inactive</td>
</tr>
<tr>
<td style="width:200px;"><strong>supportspublicaccess</strong></td><td style="width:500px;">true if network offering supports public access for guest networks</td>
</tr>
<tr>
<td style="width:200px;"><strong>supportsstrechedl2subnet</strong></td><td style="width:500px;">true if network offering supports network that span multiple zones</td>
</tr>
<tr>
<td style="width:200px;"><strong>tags</strong></td><td style="width:500px;">the tags for the network offering</td>
</tr>
<tr>
<td style="width:200px;"><strong>traffictype</strong></td><td style="width:500px;">the traffic type for the network offering, supported types are Public, Management, Control, Guest, Vlan or Storage.</td>
</tr>
<tr>
<td style="width:200px;"><strong>zone</strong></td><td style="width:500px;">the zone name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.</td>
</tr>
<tr>
<td style="width:200px;"><strong>zoneid</strong></td><td style="width:500px;">the zone ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.</td>
</tr>
<tr>
<td style="width:200px;"><strong>service(*)</strong></td><td style="width:500px;">the list of supported services</td>
<tr>
<td style="width:180px; padding-left:25px;"><strong>name</strong></td><td style="width:500px;">the service name</td>
</tr>
<tr>
<td style="width:180px; padding-left:25px;"><strong>capability(*)</strong></td><td style="width:500px;">the list of capabilities</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">canchooseservicecapability</td><td style="width:500px;">can this service capability value can be choosable while creatine network offerings</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">name</td><td style="width:500px;">the capability name</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">value</td><td style="width:500px;">the capability value</td>
</tr>
<tr>
<td style="width:180px; padding-left:25px;"><strong>provider(*)</strong></td><td style="width:500px;">the service provider name</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">id</td><td style="width:500px;">uuid of the network provider</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">canenableindividualservice</td><td style="width:500px;">true if individual services can be enabled/disabled</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">destinationphysicalnetworkid</td><td style="width:500px;">the destination physical network</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">name</td><td style="width:500px;">the provider name</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">physicalnetworkid</td><td style="width:500px;">the physical network this belongs to</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">servicelist</td><td style="width:500px;">services for this provider</td>
</tr>
<tr>
<td style="width:165px; padding-left:40px;">state</td><td style="width:500px;">state of the network provider</td>
</tr>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="comments_thread">
<script type="text/javascript" src="https://comments.apache.org/show_comments.lua?site=test" async="true"></script>
<noscript>
<iframe width="930" height="500" src="https://comments.apache.org/iframe.lua?site=test&amp;page=4.2.0/rootadmin"></iframe>
</noscript>
</div>
<div id="footer_mainmaster">
<p>Copyright &copy; 2015 The Apache Software Foundation, Licensed under the
                   <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0.</a>
<br>
                Apache, CloudStack, Apache CloudStack, the Apache CloudStack logo, the CloudMonkey logo  and the Apache feather logo are trademarks of The Apache Software Foundation.</p>
</div>
</div>
</div>
</div>
</body>
</html>
