---
schema_version: "1"
id: aaec63a72e2a78d40bd52e3044388302aeba24e9508c14b97d87086158326fcc
title: Troubleshoot Connected Apps - Direct Trust
collection: tableau
version: next
locale: en-us
portal_url: https://docs.salesforce.com/tableau/next/en-us/online/connected_apps_troubleshoot.md
canonical_url: https://help.tableau.com/v0.0/online/en-us/connected_apps_troubleshoot.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 0d2e9e910d4a45de01435e59a2d13c076e1dbe2afad87d43c3698c4bee7f9125
description: Troubleshoot direct-trust connected apps when embedded content or REST API authorization fails.
---
[Skip to main content](#main-content)

# Troubleshoot Connected Apps - Direct Trust

When embedded content fails to display in your custom application or Tableau REST API authorization fails, you can use a browser’s developer tools to inspect and identify error codes that might be associated with the Tableau connected app (direct trust) that’s used to display the embedded content.

**Note:** In order for the session token to be valid, the clocks of the external application and the server that hosts the external application must be set to Coordinated Universal Time (UTC). If either clock uses a different standard, the connected app will not be trusted.

Refer to the table below to review the description of the error code and potential resolution.

<table style="width: 90%;margin-left: 0;margin-right: auto;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" class="TableStyle-Basic-Border" cellspacing="0">
                        <colgroup><col class="TableStyle-Basic-Border-Column-Column1">
                        <col class="TableStyle-Basic-Border-Column-Column1">
                        <col class="TableStyle-Basic-Border-Column-Column1">
                        <col class="TableStyle-Basic-Border-Column-Column1">
                        </colgroup><tbody>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">Error code</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">Summary</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">Description</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1" style="font-weight: bold;">Potential resolution or explanation</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">5</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">SYSTEM_USER_NOT_FOUND</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Tableau user could not be found</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">
                                    To resolve this issue, verify the '<code>sub</code>' (Subject) claim value in the JWT is the user name (email address) of the authenticated Tableau Cloud user. This value is case sensitive.
                                </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">16</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">LOGIN_FAILED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Login failed</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error is typically caused by one of the following claim issues in the JWT:
                            <ul><li>The '<code>exp</code>' (Expiration Time) exceeds the default maximum validity period. To resolve this issue, review <a href="https://help.tableau.com/current/online/en-us/connected_apps.htm#jwt" target="_blank">registered claims</a> required for a valid JWT and ensure the correct value does not exceed 10 minutes. </li><li>The '<code>sub</code>' (Subject) is calling an unknown user. To resolve this issue, verify the '<code>sub</code>' value is the user name (email address) of the authenticated Tableau Cloud user.</li></ul></td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">67</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">FEATURE_NOT_ENABLED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">On-demand access is not supported</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">On-demand access is available through licensed Tableau Cloud sites only. </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">126</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">CONNECTED_APP_NOT_FOUND</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">The connected app could not be found</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, verify the connected app is enabled and the correct client ID (also known as the connect app ID) is referenced in the JWT. </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">127</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">CONNECTED_APP_SECRET_NOT_FOUND</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">The connected app's secret could not be found</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, verify the correct connected app's secret ID and secret value are referenced in the JWT.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">128</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">CONNECTED_APP_SECRET_LIMIT_EXCEEDED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Maximum limit for secrets has been reached</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">A maximum of two secrets are allowed for a connected app. This error can occur when there's an attempt to create a third secret.
                            <p>To resolve this issue, delete a secret from the connected app before creating a new one.</p></td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">133</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">INVALID_CONNECTED_APP_DOMAIN_SAFELIST</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Domain allowlist contains one or more invalid characters</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur when the domain allowlist contains one or more invalid characters.
                            </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10083</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">BAD_JWT</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT header contains issues</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">The '<code>kid</code>' (Secret ID) or '<code>clientId</code>' (Issuer) claims are missing from the JWT header. To resolve this issue, ensure this information is included.
                            </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10084</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT_PARSE_ERROR</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT contains issues</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, verify the following:
                            <ul><li>The '<code>aud</code>' (Audience) value referenced in the JWT uses the "tableau" value. This value is case sensitive.</li><li>The '<code>aud</code>' (Audience) and '<code>sub</code>' (Subject) are included in the JWT.</li><li>Review IssueTime or ensure there's no clock mismatch between the machine hosting the connected app and Tableau Cloud.</li></ul></td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10085</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">COULD_NOT_FETCH_JWT_KEYS</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT could not find keys</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">Could not find the secret.
                            <p>To resolve this issue, verify the correct 'kid' (Secret ID) is used in the JWT header. </p></td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10089</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">CONNECTED_APP_NOT_FOUND</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Could not find connected app</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, ensure the issuer is calling the correct connected app ID&nbsp;(also known as the client ID). </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10090</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">CONNECTED_APP_DISABLED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Connected app is disabled</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">The connected app used to verify trust is disabled. To resolve this issue, enable the connected app.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10091</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JTI_ALREADY_USED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Unique JWT&nbsp;required</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">The JWT&nbsp;has already been used in the authentication process. To resolve this issue, a new JWT must be generated.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10092</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">NOT_IN_DOMAIN_ALLOW_LIST</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Domain of the embedded content is not specified</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, ensure the <code>unrestrictedEmbedding</code> setting is set to <code>true</code> or <code>domainAllowlist</code> parameter includes the domains where Tableau content is embedded using the <a href="https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api_ref_site.htm#embedding_settings_for_site" target="_blank">Update Embedding Settings for Site</a> method in the Tableau REST API. </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10094</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">MISSING_REQUIRED_JTI</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Missing JWT&nbsp;ID</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">To resolve this issue, verify the  '<code>jti</code>' (JWT ID) is included in the JWT.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10096</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT_EXPIRATION_EXCEEDS_CONFIGURED_EXPIRATION_PERIOD</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Issue with expiration time</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">
                                    The '<code>exp</code>' (Expiration Time) exceeds the default maximum validity period. To resolve this issue, review <a href="https://help.tableau.com/current/online/en-us/connected_apps_eas.htm#jwt" target="_blank">registered claims</a> required for a valid JWT and ensure the correct value does not exceed 10 minutes.
                                </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10097</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">SCOPES_MALFORMED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Issues with scopes claim</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur when the '<code>scp</code>' (Scope) claim is either missing from the JWT&nbsp;or not passed as a list type. To resolve this issue, verify '<code>scp</code>' is included in the JWT and passed as a list type. For troubleshooting help with a JWT, see <a href="https://jwt.io/" target="_blank">Debugger</a> on the auth0 site.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10098</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT_UNSIGNED_OR_ENCRYPTED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT&nbsp;is unsigned or encrypted</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">Tableau does not support an unsigned or encrypted JWT.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10099</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">SCOPES_MISSING_IN_JWT</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Missing scopes claim</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">The JWT&nbsp;is missing the required '<code>scp</code>' (scope) claim. To resolve this issue, verify '<code>scp</code>' is included in the JWT. For troubleshooting help with a JWT, see <a href="https://jwt.io/" target="_blank">Debugger</a> on the auth0 site.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10100</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JTI_PERSISTENCE_FAILED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Unexpected JWT&nbsp;ID&nbsp;error</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">There was an unexpected '<code>jti</code>' (JWT&nbsp;ID) error. To resolve this issue, a new JWT&nbsp;with a new '<code>jti</code>' must be generated.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10101</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">EPHEMERAL_USER_LOGIN_FAILED_SITE_NOT_UBP_ENABLED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">On-demand access is not supported</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">The site is not licensed with the Embedded Analytics usage-based model that is required to enable on-demand access. For more information, see <a href="https://help.tableau.com/v0.0/online/en-us/license_product_keys.htm#embedded-analytics" class="xref">Understanding License Models</a>.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10102</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">EPHEMERAL_USER_NOT_SUPPORTED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">On-demand access is not supported when iframe-auth attribute is enabled</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur when the iframe-auth attribute is enabled. To resolve this issue, verify that the Tableau Embedding API&nbsp;version 3.6 or later is being used.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10103</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT_MAX_SIZE_EXCEEDED</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">JWT exceeds maximum size</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur when JWT&nbsp;size exceeds 8000 bytes. To resolve this issue, make sure that only the necessary claims are being passed to <span class="mc-variable Variables.ProductName variable">Tableau Cloud</span>. </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10105</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">ORIGIN_HEADER_NOT_A_VALID_URI</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Invalid Origin header</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur because 1) a URL is specified in the domain allowlist and 2) the Origin header does not contain a valid URL.</td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">10106</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">ORIGIN_HEADER_NOT_SET</td>
                                <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">Missing Origin header</td>
                                <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">This error can occur because 1) a URL is specified in the domain allowlist and 2) the Origin header is not set. </td>
                            </tr>
                            <tr class="TableStyle-Basic-Border-Body-Body1">
                                <td class="TableStyle-Basic-Border-BodyB-Column1-Body1">10113</td>
                                <td class="TableStyle-Basic-Border-BodyB-Column1-Body1">EPHEMERAL_USER_LOGIN_FAILED_SITE_NOT_ENTITLED_FOR_ODA_ACCESS</td>
                                <td class="TableStyle-Basic-Border-BodyB-Column1-Body1">On-demand access is not supported</td>
                                <td class="TableStyle-Basic-Border-BodyA-Column1-Body1">This site is not licensed with Embedded Analytics usage-based model; or Capacity-based Viewer Blocks is not enabled with  Cloud+ or Tableau+ edition, which is required for on-demand access. For more information, see <a href="https://help.tableau.com/v0.0/online/en-us/license_product_keys.htm#UsageBased" class="xref">Usage-based license model</a> or <a href="https://help.tableau.com/v0.0/online/en-us/license_product_keys.htm#capacity" class="xref">Capacity-based license model</a>. </td>
                            </tr>
                        </tbody>
                    </table>