<!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.14.1.0-SNAPSHOT Root Admin API Reference
					</span>
                                        <p></p>
                                        <h1>updateResourceLimit</h1>
                                        <p>Updates resource limits for an account or domain.</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;"><strong>resourcetype</strong></td><td style="width:500px;"><strong>Type of resource to update. Values are 0, 1, 2, 3, 4, 6, 7, 8, 9, 10 and 11. 0 - Instance. Number of instances a user can create. 1 - IP. Number of public IP addresses a user can own. 2 - Volume. Number of disk volumes a user can create. 3 - Snapshot. Number of snapshots a user can create. 4 - Template. Number of templates that a user can register/create. 6 - Network. Number of guest network a user can create. 7 - VPC. Number of VPC a user can create. 8 - CPU. Total number of CPU cores a user can use. 9 - Memory. Total Memory (in MB) a user can use. 10 - PrimaryStorage. Total primary storage space (in GiB) a user can use. 11 - SecondaryStorage. Total secondary storage space (in GiB) a user can use. </strong></td><td style="width:180px;"><strong>true</strong></td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><i>account</i></td><td style="width:500px;"><i>Update resource for a specified account. Must be used with the domainId parameter.</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>Update resource limits for all accounts in specified domain. If used with the account parameter, updates resource limits for a specified account in specified domain.</i></td><td style="width:180px;"><i>false</i></td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><i>max</i></td><td style="width:500px;"><i>  Maximum resource limit.</i></td><td style="width:180px;"><i>false</i></td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><i>projectid</i></td><td style="width:500px;"><i>Update resource limits for project</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>account</strong></td><td style="width:500px;">the account of the resource limit</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>domain</strong></td><td style="width:500px;">the domain name of the resource limit</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>domainid</strong></td><td style="width:500px;">the domain ID of the resource limit</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>max</strong></td><td style="width:500px;">the maximum number of the resource. A -1 means the resource currently has no limit.</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>project</strong></td><td style="width:500px;">the project name of the resource limit</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>projectid</strong></td><td style="width:500px;">the project id of the resource limit</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>resourcetype</strong></td><td style="width:500px;">resource type. Values include 0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11. See the resourceType parameter for more information on these values.</td>
                                        </tr>
                                        <tr>
                                            <td style="width:200px;"><strong>resourcetypename</strong></td><td style="width:500px;">resource type name. Values include user_vm, public_ip, volume, snapshot, template, project, network, vpc, cpu, memory, primary_storage, secondary_storage.</td>
                                        </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>
