Error Codes for Xbox One APIs

This page lists the error codes for Xbox One APIs along with a description of each constant, and the scenarios that might produce the error code.

Return String Return Code Scenario Description
SPERR_NO_GRAMMAR_ENABLED 0x8004550C NUI SPERR_NO_GRAMMAR_ENABLED occurs when speech recognition is starting (or stopping) without active grammars. The recommended resolution steps are listed in the following order:
  1. Disable speech recognition (StopContinuousRecognition).
  2. Make changes to grammars, including enable / disable and rule modification.
  3. Enable speech recognition (StartContinuousRecognition).
After calling StopContinuousRecognition you should wait for confirmation that recognition has stopped via the SpeechRecognitionStatusChanged event handler before you modify the recognition state.
E_FILE_NOT_FOUND 0x80070002 Localization E_FILE_NOT_FOUND is caused by incorrectly set-up localization for your package. This has been known to cause issues, including files going missing during install. Try the following to correct the issue:
  • Make sure that you're localizing your package using a resources.pri file.
  • Only list the languages you support in the section of the manifest file.
  • Add resource values for each of the languages you're targeting to the resources.pri file.
  • Make sure that resources.pri and appdata.bin appear at the start of your chunk.
  • If all else fails, add a dummy text file at the start of the first chunk, before the EXE file.
    PackageTransferManager APIs E_FILE_NOT_FOUND is returned if the PackageTransfer APIs, such as PackageTransferManager::Current, are used with a loose file deployment rather than a packaged build.
    Missing DLLs You may see E_FILE_NOT_FOUND if you have a missing DLL or resource in your game.
E_ACCESSDENIED 0x80070005 Packaging/Streaming Install You may get an E_ACCESSDENIED error from makepkg. Typically this is caused by a lack of write access to the target drive.
    D3D#CreateDeviceThe following functions can return E_ACCESSDENIED: Xbox One only supports one Direct3D device at a time. You can check for E_ACCESSDENIED to see if the device has already been created by either the same process or another exclusive-mode process.
    TCUI You may sometimes get an E_ACCESSDENIED error when attempting to show System UI. This typically happens when you attempt to show System UI while the game does not have focus.
ERROR_NOT_SUPPORTED 0x80070032 Application Model CheckPrivilegeAsync will throw an exception with HResult 0x80070032 (ERROR_NOT_SUPPORTED) on task creation as opposed to execution if the requesting user is not signed in at the time.
E_INVALIDARG 0x80070057 Secure Sockets E_INVALIDARG is returned by GetTemplateByName when the specified template does not exist in the manifest.
    TCUI ShowPeoplePickerAsync returns E_INVALIDARG if any of the following is true:
  • maximumSelectionSize is less than 1
  • minimumSelectionSize is greater than maximumSelectionSize (note: they can be the same value)
  • size of selectFromXuidList is greater than 100
  • maximumSelectionCount is greater than the size of selectFromXuidList
  • Size of preselectedXuidList is greater than maximumSelectionCount
ERROR_INSTALL_REGISTRATION_FAILURE 0x80073CF6 App Deployment ERROR_INSTALL_REGISTRATION_FAILURE is typically caused by an invalid appx manifest file. Either the XML in the file causes problems, or one of the files the manifest refers to is missing. Check that all files are present and that you do not have any typos or syntax errors in the manifest. You can run the deploy command using the /VM flag to enable detailed manifest validation which can help you track down the issue.
ERROR_INSTALL_FAILED 0x80073CF9 App Deployment ERROR_INSTALL_FAILED can be returned if the console ends up with invalid installed app data. Try using xbcleanup /u or xbcleanup /c to put the console back into a known-good state. If that fails, factory-reset the console using xbcleanup /f (see xbcleanup).
APPX_E_INVALID_MANIFEST 0x80080204 App Deployment See ERROR_INSTALL_REGISTRATION_FAILURE.
HTTP_E_STATUS_BAD_REQUEST 0x80190190 Title Storage HTTP_E_STATUS_BAD_REQUEST indicates invalid path or file for GetBlobMetadataAsync.
    Marketplace For Details Service (GetCatalogItemDetailsAsync): HTTP_E_STATUS_BAD_REQUEST is caused when more than 10 CatalogItems per request are specified. Only 10 CatalogItems (MAX_DETAILS_ITEMS) are allowed. For Catalog Service (BrowseCatalogAsync): this error can also occur by setting the maxItems too large. Only 25 items per call are supported.
    Xbox Live Compute For AllocateClusterAsync, HTTP_E_STATUS_BAD_REQUEST indicates a failure for the matchmaking request, typically due to QoS (where the requirement is all-or-nothing).
    Social For Xbox::Services APIs, HTTP_E_STATUS_BAD_REQUEST means invalid leaderboard or profile.
LM_E_CONTENT_NOT_IN_CATALOG 0x87DE2712 Licensing/DLC LM_E_CONTENT_NOT_IN_CATALOG means the system is trying to get a license for content that has not been ingested into XDP. This is caused by trying to use xbapp install on a package created with makepkg’s /l parameter, which is only used for submitting final builds of packages in XDP and not for development or testing.
AUDCLNT_E_CPUUSAGE_EXCEEDED 0x88890017 NUI AUDCLNT_E_CPUUSAGE_EXCEEDED is caused by reinitializing or restarting NUI too quickly after it has been previously shutdown. One method of handling this error would be to wait momentarily and retry the operation. Waiting a few seconds (2-4 seconds) should be sufficient for most cases.

See also

Direct3D 12 Return Codes

Direct3D 11 Return Codes

ConnectedStorageErrorStatus Enumeration

ApplicationClipError Enumeration