Returns details for a web application which is in the user’s scope. Want to find a web application ID to use as input? See Search Web applications.
The web application screenshot, when available, is included in the output in the “screenshot” element as a base64 encoded binary string. This string needs to be converted before a user can decode and view the image file (.jpg).
You can also retrieve the TruRisk score for a web application in the API response.
Permissions required - User must have WAS module enabled. User account must have these permissions: Access Permission “API Access”. The output includes web applications in the user's scope.
The element “id” (integer) is required, where “id” identifies a web application.
Let us view details for the web application with the ID 2130421.
API request
curl -n -u "USERNAME:PASSWORD" "<qualys_base_url>/qps/rest/3.0/get/was/webapp/2130421"
XML response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>2130421</id>
<name>
<![CDATA[CUSTOM PARAM TEST]]>
</name>
<url>
<![CDATA
[http://funkytown.abcd01.abcd.com/Forms/FormFields/temp/]]>
</url>
<os>Linux 2.4-2.6 / Embedded Device / F5 Networks Big-IP / Linux 2.6</os>
<owner>
<id>4354</id>
<username>user_alex</username>
<firstName>
<![CDATA[Alex]]>
</firstName>
<lastName>
<![CDATA[Smith]]>
</lastName>
</owner>
<scope>ALL</scope>
<attributes>
<count>0</count>
</attributes>
<defaultProfile>
<id>139359</id>
<name>
<![CDATA[10 Links edit]]>
</name>
</defaultProfile>
<defaultScanner>
<type>EXTERNAL</type>
</defaultScanner>
<scannerLocked>false</scannerLocked>
<urlBlacklist>
<count>0</count>
</urlBlacklist>
<urlWhitelist>
<count>0</count>
</urlWhitelist>
<postDataBlacklist>
<count>0</count>
</postDataBlacklist>
<authRecords>
<count>1</count>
<list>
<WebAppAuthRecord>
<id>127357</id>
<name>
<![CDATA[AR - funkytown]]>
</name>
</WebAppAuthRecord>
</list>
</authRecords>
<useRobots>IGNORE</useRobots>
<useSitemap>false</useSitemap>
<malwareMonitoring>true</malwareMonitoring>
<malwareNotification>true</malwareNotification>
<malwareScheduling>
<startDate>2017-03-03T09:50:00Z</startDate>
<timeZone>
<code>Asia/Kolkata</code>
<offset>+05:30</offset>
</timeZone>
<occurrenceType>MONTHLY</occurrenceType>
<occurrence>
<monthlyOccurrence>
<monthlyType>
<occurDayOrderInMonth>
<dayOrder>FIRST</dayOrder>
<dayOfMonth>THURSDAY</dayOfMonth>
<everyNMonths>1</everyNMonths>
</occurDayOrderInMonth>
</monthlyType>
<occurrenceCount>4</occurrenceCount>
</monthlyOccurrence>
</occurrence>
</malwareScheduling>
<tags>
<count>4</count>
<list>
<Tag>
<id>1730872</id>
<name>
<![CDATA[new tag]]>
</name>
</Tag>
<Tag>
<id>1418973</id>
<name>
<![CDATA[Cert Tag]]>
</name>
</Tag>
<Tag>
<id>1693034</id>
<name>
<![CDATA[My Tag name]]>
</name>
</Tag>
<Tag>
<id>1693032</id>
<name>
<![CDATA[Groovy tag -1]]>
</name>
</Tag>
</list>
</tags>
<comments>
<count>0</count>
</comments>
<isScheduled>false</isScheduled>
<lastScan>
<id>827468</id>
<name>
<![CDATA[Web Application Vulnerability Scan - CUSTOM PARAM TEST]]>
</name>
</lastScan>
<createdBy>
<id>4354</id>
<username>user_alex</username>
<firstName>
<![CDATA[Alex]]>
</firstName>
<lastName>
<![CDATA[Smith]]>
</lastName>
</createdBy>
<createdDate>2017-07-24T09:08:49Z</createdDate>
<updatedBy>
<id>4354</id>
<username>user_alex</username>
<firstName>
<![CDATA[Alex]]>
</firstName>
<lastName>
<![CDATA[Smith]]>
</lastName>
</updatedBy>
<updatedDate>2017-09-24T23:34:17Z</updatedDate>
<screenshot>
<![CDATA[_9j_4AAQSkZJRgABAQEAegBrAAD_2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj_2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg
… (shortened for brevity)
Convert this value in order to decode and view the image file (.jpg).
</screenshot>
</WebApp>
</data>
</ServiceResponse>
Let us get details of the web application with ID 2508873 that includes DNS override records. The dnsOverrides element lists the records.
API request
curl -u "USERNAME:PASSWORD" "<qualys_base_url>/qps/rest/3.0/get/was/webapp/2508873"
XML response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>2508873</id>
<name>
<![CDATA[My Web App]]>
</name>
<url>
<![CDATA[http://funkytown.vuln.qa.com:80/cassium/xss/]]>
</url>
<owner>
<id>4354</id>
<username>user_adam</username>
<firstName>
<![CDATA[Adam]]>
</firstName>
<lastName>
<![CDATA[Smith]]>
</lastName>
</owner>
<scope>ALL</scope>
<attributes>
<count>0</count>
</attributes>
<defaultScanner>
<type>INTERNAL</type>
<friendlyName>
<![CDATA[db4_abcd_ab2]]>
</friendlyName>
</defaultScanner>
<scannerLocked>false</scannerLocked>
<progressiveScanning>ENABLED</progressiveScanning>
<urlBlacklist>
<count>0</count>
</urlBlacklist>
<urlWhitelist>
<count>0</count>
</urlWhitelist>
<postDataBlacklist>
<count>0</count>
</postDataBlacklist>
<authRecords>
<count>0</count>
</authRecords>
<dnsOverrides>
<count>2</count>
<list>
<DnsOverride>
<id>1620</id>
<name>
<![CDATA[DNS Override Settings 1]]>
</name>
</DnsOverride>
<DnsOverride>
<id>1020</id>
<name>
<![CDATA[DNS Override Settings 2]]>
</name>
</DnsOverride>
</list>
</dnsOverrides>
<useRobots>IGNORE</useRobots>
<useSitemap>false</useSitemap>
<malwareMonitoring>false</malwareMonitoring>
Let us get details for the webapp with a logout regular expression list.
API request
curl -u "USERNAME:PASSWORD" -X GET -H 'Content-type: text/xml' "<qualys_base_url>/qps/rest/3.0/get/was/webapp/842222"
XML response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>842222</id>
<name>
<![CDATA[My Web Application]>
</name>
<url>
<![CDATA[http://mywebapp.com]]>
</url>
<owner>
<id>337014</id>
<username>user_john</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</owner>
<scope>ALL</scope>
<attributes>
<count>0</count>
</attributes>
<defaultScanner>
<type>EXTERNAL</type>
</defaultScanner>
<scannerLocked>false</scannerLocked>
<urlBlacklist>
<count>0</count>
</urlBlacklist>
<urlWhitelist>
<count>0</count>
</urlWhitelist>
<postDataBlacklist>
<count>0</count>
</postDataBlacklist>
<logoutRegexList>
<count>1</count>
<list>
<UrlEntry regex="true">
<![CDATA[leave]]>
</UrlEntry>
</list>
</logoutRegexList>
<authRecords>
<count>0</count>
</authRecords>
....
</WebApp>
</data>
</ServiceResponse>
Let us view the default authentication record details for a web application.
API request
curl -n -u "USERNAME:PASSWORD" -X GET -H 'Content-type: text/xml' "<qualys_base_url>/qps/rest/3.0/get/was/webapp/53040"
XML response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>53040</id>
<name>
<![CDATA[WASUI-5597]]>
</name>
...
<config>
<defaultAuthRecord>
<id>9133</id>
<name>
<![CDATA[WASUI-6453]]>
</name>
</defaultAuthRecord>
</config>
</WebApp>
</data>
</ServiceResponse>
Let us get details for the webapp with a response that returns details of the selenium crawl script along with other details for the web application.
API request
curl -n -u "USERNAME:PASSWORD" "<qualys_base_url>/qps/rest/3.0/get/was/webapp/937657"
XML response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/rest/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>937657</id>
<name>
<![CDATA[My Web Application]]>
</name>
<url>
<![CDATA[http://mywebapp.com]]>
</url>
<owner>
<id>337014</id>
<username>john_doe</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</owner>
<scope>ALL</scope>
<attributes>
<count>0</count>
</attributes>
<defaultScanner>
<type>EXTERNAL</type>
</defaultScanner>
<scannerLocked>false</scannerLocked>
<urlBlacklist>
<count>0</count>
</urlBlacklist>
<urlWhitelist>
<count>0</count>
</urlWhitelist>
<postDataBlacklist>
<count>0</count>
</postDataBlacklist>
<logoutRegexList>
<count>0</count>
</logoutRegexList>
<authRecords>
<count>0</count>
</authRecords>
<dnsOverrides>
<count>0</count>
</dnsOverrides>
<useRobots>IGNORE</useRobots>
<useSitemap>false</useSitemap>
<malwareMonitoring>false</malwareMonitoring>
<malwareNotification>false</malwareNotification>
<tags>
<count>0</count>
</tags>
<comments>
<count>0</count>
</comments>
<isScheduled>false</isScheduled>
<createdBy>
<id>337014</id>
<username>john_doe</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</createdBy>
<createdDate>2017-02-06T10:54:00Z</createdDate>
<updatedBy>
<id>337014</id>
<username>john_doe</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</updatedBy>
<updatedDate>2017-02-06T10:54:00Z</updatedDate>
<config/>
<crawlingScripts>
<count>1</count>
<list>
<SeleniumScript>
<id>2500</id>
<name>
<![CDATA[TestSeleniumScript]]>
</name>
<data>
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="http://10.10.26.238" />
<title>New Test</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">New Test</td>
</tr>
</thead>
<tbody>
<tr>
<td>open</td>
<td>http://10.10.26.238/</td>
<td></td>
</tr>
<tr>
<td>type</td>
<td>name=login</td>
<td>admin</td>
</tr>
<tr>
<td>type</td>
<td>name=password</td>
<td>abc123</td>
</tr>
<tr>
<td>clickAndWait</td>
<td>name=submit</td>
<td></td>
</tr>
</tbody>
</table>
</body>
</html></data>
<requiresAuthentication>true
</requiresAuthentication>
<startingUrl>
<![CDATA[http://www.mywebapp.com]]>
</startingUrl>
<startingUrlRegex>true</startingUrlRegex>
</SeleniumScript>
</list>
</crawlingScripts>
</WebApp>
</data>
</ServiceResponse>
If Progressive Scanning is enabled for the subscription, the progressive Scanning element is displayed in GET call responses. If Progressive Scanning is not enabled for the subscription, the element is not included. For all existing web applications created prior to WAS 4.0 the value will be set to TRUE by default.
API request
curl -n -u "USERNAME:PASSWORD" "<qualys_base_url>/qps/rest/3.0/get/was/webapp/323102"
XML response
<ServiceResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="<qualys_base_url>/qps/xsd/3.0/was/webapp.xsd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>323102</id>
<name>
<![CDATA[MamboCMS]]>
</name>
<url>
<![CDATA[http://funkytown.abcd01.abcd.com/Forms/FormFields/temp/updated_web_app_name]]>
</url>
...
<scannerLocked>false</scannerLocked>
<progressiveScanning>DISABLED</progressiveScanning>
...
This example shows the details of a web application with TruRisk score.
API Request
curl -n -u "USERNAME:PASSWORD"
"<qualys_base_url>/qps/rest/3.0/get/was/webapp/39725230"
Response
<?xml version="1.0" encoding="UTF-8"?>
<ServiceResponse
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="
<qualys_base_url>/qps/xsd/3.0/was/webapp.x
sd">
<responseCode>SUCCESS</responseCode>
<count>1</count>
<data>
<WebApp>
<id>39725230</id>
<name>
<![CDATA[API_My Web Application Create111]]>
</name>
<url>
<![CDATA[http://mywebapp.com/]]>
</url>
<riskScore>0</riskScore>
<owner>
<id>123456789</id>
<username>qualysabc</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</owner>
<scope>ALL</scope>
<attributes>
<count>0</count>
</attributes>
<defaultProfile>
<id>6954976</id>
<name>
<![CDATA[1 link OP]]>
</name>
</defaultProfile>
<defaultScanner>
<type>EXTERNAL</type>
</defaultScanner>
<scannerLocked>false</scannerLocked>
<progressiveScanning>false</progressiveScanning>
<urlBlacklist>
<count>0</count>
</urlBlacklist>
<urlWhitelist>
<count>0</count>
</urlWhitelist>
<postDataBlacklist>
<count>0</count>
</postDataBlacklist>
<logoutRegexList>
<count>0</count>
</logoutRegexList>
<authRecords>
<count>0</count>
</authRecords>
<dnsOverrides>
<count>0</count>
</dnsOverrides>
<useRobots>IGNORE</useRobots>
<useSitemap>false</useSitemap>
<malwareMonitoring>false</malwareMonitoring>
<malwareNotification>false</malwareNotification>
<tags>
<count>1</count>
<list>
<Tag>
<id>133578207</id>
<name>
<![CDATA[Test Tag]]>
</name>
</Tag>
</list>
</tags>
<comments>
<count>0</count>
</comments>
<isScheduled>false</isScheduled>
<lastScan>
<id>8212593</id>
<name>
<![CDATA[
Schedule Daily Discovery111- API11
Run #20]]>
</name>
<summary>
<resultsStatus>NO_WEB_SERVICE</resultsStatus>
<authStatus>NONE</authStatus>
</summary>
</lastScan>
<createdBy>
<id>123456789</id>
<username>qualysabc</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</createdBy>
<createdDate>2023-08-11T05:43:52Z</createdDate>
<updatedBy>
<id>123456789</id>
<username>qualysabc</username>
<firstName>
<![CDATA[John]]>
</firstName>
<lastName>
<![CDATA[Doe]]>
</lastName>
</updatedBy>
<updatedDate>2023-12-20T09:45:31Z</updatedDate>
<config/>
<crawlingScripts>
<count>0</count>
</crawlingScripts>
</WebApp>
</data>
</ServiceResponse>
<platform API server>/qps/xsd/3.0/was/webapp.xsd