Upload Results to the Mobile Dashboard

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard
Not for use with personal data

Use the uploadToDashboard API with the ScanResultHandler to send results to a central location where your whole team can view and manage accessibility failures.

    val scanResultHandler = axe.scan()

    scanResultHandler?.uploadToDashboard()

In the future, the axe DevTools Mobile Dashboard will be replaced altogether by axe Developer Hub. During the transition, however, you can find results both on the Dashboard and in Developer Hub.

About axe Developer Hub

The axe Developer Hub is a central location where your whole team can view and manage accessibility issues found in your app.

With Developer Hub you are able to:

  • Find results for accessibility scans
  • Share a scan/group of scans
  • Decide which results matter most and adapt your tests

Visit the docs for axe Developer Hub to learn more.

Share Results with Your Team

To create a direct link to your results in Developer Hub, you can follow this pattern - adding your own project ID:

https://axe.deque.com/axe-watcher/projects/<project_ID>

This takes you to a page where all recent runs for that projectID are listed.

Create a Scan Group URL for the axe Mobile Dashboard

When you upload your scan to the Mobile Dashboard, the scan result returned from the POST request has the axeDevToolsResultKey object. This object has four properties: packageName, userId, resultId, and uuid. Using the uuid property, you can create a URL directing to a group of up to 20 results on the Dashboard. Use the following as a guide for the scan URL structure:

${dashboardBaseURL}/scans?uuids=${uuidsSeperatedWithComma}

Example

val dashboardBaseUrl = "https://axe-mobile.deque.com"
        val uuidList = mutableListOf<String>()

        // nav to screen 1

        val scan1 = axe.scan() // Perform a scan
        // Upload result to dashboard
        val uploadResult1 = scan1?.uploadToDashboard() 
        // Add uuid from resultKey to list of uuids from all scans
        uploadResult1?.axeDevToolsResultKey?.uuid?.let { uuidList.add(it) } 

        // nav to screen 2

        // Perform next scan
        val scan2 = axe.scan() 
        // Upload result to dashboard
        val uploadResult2 = scan2?.uploadToDashboard() 
        // Add uuid from resultKey to list of uuids from all scans
        uploadResult2?.axeDevToolsResultKey?.uuid?.let { uuidList.add(it) }

        // More scans - up to 20 in total

        // Create a string of uuids separated by a comma
        val uuidString = uuidList.joinToString(",") { it }

        // Create scan group uri
        val uri = Uri.parse(dashboardBaseUrl).buildUpon()
            .appendEncodedPath("scans")
            .appendQueryParameter("uuids", uuidString)
            .build()

        println("Scan group: $uri")