Error Description
The capability you have entered to upload the app is invalid. Please enter the valid "app" capability.
Solution
REST API for the uploading the app on BrowserStack is:
curl -u "<username>:<accesskey>" -X POST "https://api-cloud.browserstack.com/app-automate/upload" -F "file=@/path/to/app/file/Application-debug.apk" -F 'data={"custom_id": "MyApp"}'
Note: custom_id is optional
The response of the app upload is
"app_url" : "bs://<hashed-id>"
Use the app_url value and set it in the app capability in your test code as:
caps['app'] = 'bs://<hashed-id>'
Note: The app capability also accepts the custom_id defined by you to upload an app
For more info, you may refer to our capabilities-list documentation