Commvault REST APIs support sending QCommands as a request.
-
QCommands:
-
For a list of available CommServe QCommands, see Command Line Interface - CommServe QCommands.
-
For a list of MediaAgent QCommands, see Command Line Interface - MediaAgent - QCommands.
-
-
QCommands using XML files (qoperation execute):
-
For a list of CommServe XML files, see CommServe XML Files on the Command Line.
-
For a list of MediaAgent XML files, see Command Line Interface - MediaAgent - XML Files.
-
Other areas of the application offer XML files, for example, Command Line Configuration - Virtual Server Agent for VMware. Go to the command line documentation for the specific agent to view the available XML files.
-
For information on creating XML files using Save As Script, see Save as Script Overview.
-
Note
databrowse
XML files cannot be run by using POST /ExecuteQCommand. To browse data, use the POST Browse API.
- QScripts (qoperation execscript): for a list of available QScripts, see Command Line Operations Using QScripts.
Request
Important: To determine whether to use the POST ExecuteQCommand API or the POST QCommand API, see QCommand REST APIs.
Syntax
POST <webservice>/ExecuteQCommand HTTP/1.1 Host: <host name> Accept: application/xml Authtoken: <authentication token> Content-type: application/x-www-form-urlencoded command=<qcommand> <applicable parameters>& inputRequestXML=<XML if required by the qcommand>
where <webservice> is the root path used to route the API requests to the Web Server.
For more information, see Available Web Services for REST API.
Request Headers
Name |
Description |
---|---|
Host |
The host name of the Web Server or Web Console used in the API request. |
Accept |
The format of the response. Valid values are: application/xml or application/json. |
Authtoken |
The authentication token received after successfully logging on. For details on receiving an authentication token, see Authentication. |
Content-type |
The media type contained in the request body. The valid value is application/x-www-form-urlencoded. |
Request Body
If the QCommand requires XML in the request body, download the XML file required for the request, for example, modifying additional setting details for one or more clients requires the additional_settings.xml file.
Response
The response depends on the QCommand request.
Examples
Sample Request
This request removes a subclient from a schedule policy. For information on qmodify schedulepolicy, see Command Line Interface - CommServe QCommands - qmodify schedulepolicy.
POST <webservice>/ExecuteQCommand HTTP/1.1
Host: client.mydomain.com
Accept: application/xml
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/x-www-form-urlencoded
command=qmodify schedulepolicy -o remove -scp SCHED_PLCY_F_W -c client001 -a Q_WINDOWS_FS -b defaultBackupSet -s sub_344
This request enables privacy at the CommCell level. For information on enabling privacy at the CommCell level, see Command Line Interface - User Administration and Security - Enabling Privacy at the CommCell Level.
POST <webservice>/ExecuteQCommand HTTP/1.1
Host: client.mydomain.com
Accept: application/xml
Authtoken: QSDK 38568012f4d1e8ee1841d283a47aa3ba78e124ea58354b5fc6
0f4dab8a63347d05cf5552484dafda3bfa4c5db84e580b1cb37bcf8e65b39f7f
8549a443e6f78a2c7be3f31b3d845e24776c835e498e8e883bb40c46bd15af4f
40ca94e823acedcdd4e9659e74b34a07a85c4586cd2ed914b6dce015874783ef7
68fda78183a4208930954a377f66eb56c8b92cexampl4s437a19317ca6ce7f323
3d5a01aca35dbad93468b833f2cf71010809006a937670adce711ca8be46638e8
Content-type: application/x-www-form-urlencoded
command=qoperation execute
inputRequestXML=<App_SetControlPanelParametersRequest>
<preventAdminAccessToUserData>true</preventAdminAccessToUserData>
</App_SetControlPanelParametersRequest>
Sample Response
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<App_GenericResponse>
<response errorCode="0" warningCode="0" warningMessage=""/>
</App_GenericResponse>