Setting up an OAuth client in Contact Center

<body>
<p id="docs-hc-snippet" style="display: none;">An OAuth client is required so that Amazon Connect can send call recordings, transcripts, and contact data to Zendesk. After you create the client, Zendesk keeps the connection refreshed automatically.</p>
<div class="article-banners">
<div id="docs-wmp-link">
<a href="https://support.zendesk.com/hc/en-us/articles/5411234991258-plan" rel="noopener" target="_blank">What's my plan?</a>
</div>

<div class="article-banner" id="addon_contact-center">
<table>
<tbody>
<tr>
<td>
<strong>Add-on</strong>
</td>
<td>Contact Center</td>
</tr>
</tbody>
</table>
</div>

</div>

<div class="body">

<p class="p" dir="ltr">An OAuth client is required so that Amazon Connect can send call recordings,
transcripts, and contact data to Zendesk. After you create the client, Zendesk keeps the
connection refreshed automatically.</p>
<p class="p" dir="ltr">OAuth replaces a long-lived API token with short-lived access tokens that
Zendesk refreshes for you. If a credential is exposed, it expires on its own, and you
can rotate the client secret without setting up the integration again.</p>
<p class="p">Only administrators can create or change the OAuth client. Agents cannot open these
settings.</p>
<p class="p">This article contains the following topics:</p>
<ul class="ul" id="cc_oauth_native__ul_pfp_3lq_lkc">
<li class="li"><a class="xref" href="#topic_ign_clq_lkc">Understanding the OAuth client</a></li>
<li class="li"><a class="xref" href="#topic_cdh_glq_lkc">Before you start</a></li>
<li class="li"><a class="xref" href="#topic_mjx_r2q_lkc">Creating an OAuth client</a></li>
<li class="li"><a class="xref" href="#topic_s3h_vlq_lkc">Regenerating the client secret</a></li>
<li class="li"><a class="xref" href="#topic_k1x_zlq_lkc">Deleting the OAuth client</a></li>
<li class="li"><a class="xref" href="#topic_bwd_r2q_lkc">Troubleshooting</a></li>
</ul>
</div>
<div aria-labelledby="ariaid-title2" class="topic nested1" id="topic_ign_clq_lkc">
<h2 class="title topictitle2" id="ariaid-title2">Understanding the OAuth client</h2>
<div class="body">
<p class="p" dir="ltr">The OAuth client is the connection between your Amazon Connect instance and
your Zendesk account.</p>
<ul class="ul" id="topic_ign_clq_lkc__ul_tq3_r2q_lkc">
<li class="li" dir="ltr">When the client is <strong class="ph b">Connected</strong>, Amazon Connect can send call data
to Zendesk.</li>
<li class="li" dir="ltr">When the client is <strong class="ph b">Inactive</strong>, the client exists but Zendesk has
not issued an access token yet. This is normal for a few minutes after you
create the client. Call recordings and tickets can still update using your
existing API token until the first OAuth token is issued.</li>
<li class="li" dir="ltr">When the client shows <strong class="ph b">Connection error</strong>, the credentials in
Contact Center no longer match the client in Zendesk. See <a class="xref" href="#topic_bwd_r2q_lkc">Troubleshooting</a>.</li>
</ul>
<p class="p" dir="ltr">You create and manage the client from Contact Center. Don't create a second
client in Admin Center for the same connection as that can break the link between
Amazon Connect and Zendesk.</p>
<div class="p">
<div class="note">
<span class="notetitle">Note:</span> If you do not see <strong class="ph b">OAuth client</strong> under <strong class="ph b">Connection</strong>, your Contact Center stack might
need an update. The minimum stack version is v1.2.7. Contact Zendesk Customer
Support.</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title3" class="topic nested1" id="topic_cdh_glq_lkc">
<h2 class="title topictitle2" id="ariaid-title3">Before you start</h2>
<div class="body">
<p class="p" dir="ltr">Before you set up and use OAuth clients for Contact Center, ensure the
following prerequisites are in place:</p>
<ul class="ul" id="topic_cdh_glq_lkc__ul_nwx_cnq_lkc">
<li class="li" dir="ltr">Install a stack version of 1.2.7 or higher</li>
<li class="li">Enable the trigger on the OAuth Token Refresh Lambda</li>
</ul>
</div>
</div>
<div aria-labelledby="ariaid-title4" class="topic nested1" id="topic_mjx_r2q_lkc">
<h2 class="title topictitle2" id="ariaid-title4">Creating an OAuth client</h2>
<div class="body">
<p class="p" dir="ltr">OAuth takes precedence over any pre-existing API Tokens configured for
Contact Center.</p>
<p class="p"><strong class="ph b">To create an OAuth client in Contact Center settings</strong></p>
<ol class="ol" id="topic_mjx_r2q_lkc__ol_wq3_r2q_lkc">
<li class="li" dir="ltr">Click the Zendesk product menu in the top bar, then select <strong class="ph b">Contact
center</strong>.<p class="p" dir="ltr"><img class="image" id="topic_mjx_r2q_lkc__image_ymg_kpq_lkc" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/cc-oauth-1.png" width="200"></p>
</li>
<li class="li" dir="ltr">In the left menu, under <strong class="ph b">Connection</strong>, click <strong class="ph b">OAuth
client</strong>.</li>
<li class="li" dir="ltr">Click <strong class="ph b">Create OAuth client</strong>.<p class="p" dir="ltr"><img class="image" id="topic_mjx_r2q_lkc__image_cvh_npq_lkc" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/cc-oauth-2.png" width="800"></p>
</li>
</ol>
<p class="p" dir="ltr">Contact Center creates the client and saves the connection. The status
starts as <strong class="ph b">Inactive</strong> until Zendesk issues the first access token (usually
within a few minutes), then changes to <strong class="ph b">Connected</strong>. Until that token exists,
Contact Center keeps using your existing API token if one is configured.</p>
<div class="p">
<div class="note">
<span class="notetitle">Note:</span> The status may show <strong class="ph b">Inactive</strong> for a few minutes while Zendesk issues a new access token.
Do not create a new client in Admin Center while this is happening.</div>
</div>
<p class="p" dir="ltr">You can open the client later from <strong class="ph b">Admin Center settings</strong> on the same
page, but do not delete or regenerate it there. Use Contact Center settings
instead.</p>
<div class="p">
<div class="note">
<span class="notetitle">Note:</span> The created access token should not be used for any other purpose than to authenticate Contact
Center requests. Deployed customer lambdas should use their own OAuth
solution.</div>
</div>
<p class="p" dir="ltr">After you save a working client, Zendesk refreshes the connection in the
background.</p>
</div>
</div>
<div aria-labelledby="ariaid-title5" class="topic nested1" id="topic_s3h_vlq_lkc">
<h2 class="title topictitle2" id="ariaid-title5">Regenerating the client secret</h2>
<div class="body">
<p class="p" dir="ltr">Regenerate the client secret if you think it was exposed, or if Contact
Center shows that the secret no longer matches Zendesk as shown in the screenshot
below.</p>
<p class="p" dir="ltr"><img class="image" id="topic_s3h_vlq_lkc__image_e1c_rpq_lkc" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/cc-oauth-3.png" width="800"></p>
<p class="p"><strong class="ph b">To regenerate the secret in Contact Center settings</strong></p>
<ol class="ol" id="topic_s3h_vlq_lkc__ol_dr3_r2q_lkc">
<li class="li" dir="ltr">Click the Zendesk product menu in the top bar, then select <strong class="ph b">Contact
center</strong>.</li>
<li class="li" dir="ltr">In the left menu, under <strong class="ph b">Connection</strong>, click <strong class="ph b">OAuth
client</strong>.</li>
<li class="li" dir="ltr">Next to <strong class="ph b">Client secret</strong>, click <strong class="ph b">Regenerate</strong><p class="p" dir="ltr"><img class="image" id="topic_s3h_vlq_lkc__image_e4p_5pq_lkc" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/cc-oauth-4.png" width="600"></p>
</li>
</ol>
<div class="p">
<div class="note" id="topic_s3h_vlq_lkc__note_kpk_24q_lkc">
<span class="notetitle">Note:</span> The status may show <strong class="ph b">Inactive</strong> for a few minutes
while Zendesk issues a new access token. Do not create a new client in Admin
Center while this is happening.</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title6" class="topic nested1" id="topic_k1x_zlq_lkc">
<h2 class="title topictitle2" id="ariaid-title6">Deleting the OAuth client</h2>
<div class="body">
<p class="p" dir="ltr">Deleting the client removes the OAuth connection. The connection will
continue to work as long as a valid OAuth token still exists.</p>
<p class="p"><strong class="ph b">To delete the OAuth client in Contact Center settings</strong></p>
<ol class="ol" id="topic_k1x_zlq_lkc__ol_jr3_r2q_lkc">
<li class="li" dir="ltr">Click the Zendesk product menu in the top bar, then select <strong class="ph b">Contact
Center</strong>.</li>
<li class="li" dir="ltr">In the left menu, under <strong class="ph b">Connection</strong>, click <strong class="ph b">OAuth
client</strong>.</li>
<li class="li" dir="ltr">Click <strong class="ph b">Delete OAuth client</strong>.</li>
<li class="li" dir="ltr">In the confirmation dialog, click <strong class="ph b">Delete OAuth client</strong>.</li>
</ol>
</div>
</div>
<div aria-labelledby="ariaid-title7" class="topic nested1" id="topic_bwd_r2q_lkc">
<h2 class="title topictitle2" id="ariaid-title7">Troubleshooting</h2>
<div class="body">
<p class="p" dir="ltr">Use the following information to help you troubleshoot any problems.</p>
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_bwd_r2q_lkc__table_nr3_r2q_lkc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" dir="ltr" id="d89e340" style="vertical-align:top;"><strong class="ph b">What you see</strong></th>
<th class="entry cellrowborder" dir="ltr" id="d89e344" style="vertical-align:top;"><strong class="ph b">What to do</strong></th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" dir="ltr" headers="d89e340" style="vertical-align:top;">No <strong class="ph b">OAuth client</strong> page under
<strong class="ph b">Connection</strong>
</td>
<td class="entry cellrowborder" dir="ltr" headers="d89e344" style="vertical-align:top;">You may be on a stack version older than v1.2.7.
Contact Zendesk Customer Support to upgrade.</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" dir="ltr" headers="d89e340" style="vertical-align:top;">Status stays <strong class="ph b">Inactive</strong> for more than a few
minutes after creation</td>
<td class="entry cellrowborder" dir="ltr" headers="d89e344" style="vertical-align:top;">Refresh the page. Call data may still flow via your API
token. If it does not change to <strong class="ph b">Connected</strong>, contact Zendesk
Customer Support.</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" dir="ltr" headers="d89e340" style="vertical-align:top;">Call recordings, transcripts, or tickets stop
updating</td>
<td class="entry cellrowborder" dir="ltr" headers="d89e344" style="vertical-align:top;">Confirm the client is <strong class="ph b">Connected</strong>, or that an API
token is still configured. If you recently regenerated the OAuth
secret, wait a few minutes, then place a test call. If it is still
failing, regenerate the secret from Contact Center settings.</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" dir="ltr" headers="d89e340" style="vertical-align:top;">
<strong class="ph b">Connection error</strong>, or “OAuth Client secret has
changed from what is saved in Contact Center”</td>
<td class="entry cellrowborder" dir="ltr" headers="d89e344" style="vertical-align:top;">Someone regenerated the secret in Admin Center. Use
<strong class="ph b">Regenerate</strong> in Contact Center settings.</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" dir="ltr" headers="d89e340" style="vertical-align:top;">You cannot see the settings</td>
<td class="entry cellrowborder" dir="ltr" headers="d89e344" style="vertical-align:top;">You must be an administrator.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<script id="docs-schema-markup" type="application/ld+json">{
"@context": "https://schema.org",
"@type": "TechArticle",
"@id": "https://support.zendesk.com/hc/en-us/articles/11207412461210",
"url": "https://support.zendesk.com/hc/en-us/articles/11207412461210",
"headline": "Setting up an OAuth client in Contact Center",
"description": "You create, regenerate, or delete an OAuth client for Contact Center so Amazon Connect can send call data, with Zendesk refreshing the connection and troubleshooting connection states.",
"articleSection": "Product help",
"datePublished": "2026-09-03T16:52:37+00:00",
"dateModified": "2026-09-03T21:49:17.290586+00:00",
"inLanguage": "en",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://support.zendesk.com/hc/en-us/articles/11207412461210"
},
"author": {
"@type": "Organization",
"name": "Zendesk",
"@id": "https://www.zendesk.com"
},
"publisher": {
"@type": "Organization",
"name": "Zendesk",
"@id": "https://www.zendesk.com"
},
"isPartOf": {
"@type": "WebSite",
"name": "Zendesk Help",
"@id": "https://support.zendesk.com/hc/"
},
"about": {
"@type": "SoftwareApplication",
"name": "Zendesk",
"@id": "https://www.zendesk.com",
"softwareAddOn": {
"@type": "SoftwareApplication",
"name": "Contact Center",
"@id": "https://support.zendesk.com/hc/en-us/sections/9248688983706"
}
}
}</script>
</body>