zulip/zerver/webhooks/zendesk/doc.html

82 lines
3.1 KiB
HTML

<p>
First, create the stream you'd like to use for Zendesk notifications,
and subscribe all interested parties to this stream. We recommend the
stream name <code>zendesk</code>. Keep in mind you still need to create
the stream first even if you are using this recommendation.
</p>
<p>
Next, in Zendesk, open your Admin view via gear in the bottom-left
corner. In the Admin view, click on Extensions, then click "add
target".
</p>
<img class="screenshot" src="/static/images/integrations/zendesk/001.png"/>
<img class="screenshot" src="/static/images/integrations/zendesk/002.png"/>
<p>From there, click "URL target". Fill in the form like this:</p>
<ul>
<li><b>Title</b>: Zulip</li>
<li><b>URL</b>:
<code>{{ external_api_uri_subdomain }}{% raw %}/v1/external/zendesk?ticket_title={{ ticket.title }}&amp;ticket_id={{ ticket.id }}&amp;stream=zendesk{% endraw %}</code>
</li>
<li><b>Method</b>: POST</li>
<li><b>Attribute Name</b>: message</li>
<li><b>Username</b>: <em>your bot's user name, e.g.</em> <code>zendesk-bot@yourdomain.com</code></li>
<li><b>Password</b>: <em>your bot's API key</em></li>
</ul>
<img class="screenshot" src="/static/images/integrations/zendesk/003.png"/>
<p>
Now select "Test Target" and click Submit. A test message should
appear in the zendesk stream. If the message was received, save the
target by selecting "Create target" and clicking Submit.
</p>
<p>
From here, add a new trigger. You'll do this for every action you want
to create a Zulip notification. Triggers are added by selecting Triggers
in the left menu and then clicking "add trigger" in the top right.
</p>
<img class="screenshot" src="/static/images/integrations/zendesk/004.png"/>
<img class="screenshot" src="/static/images/integrations/zendesk/005.png"/>
<p>
Let's say you want a notification each time a ticket is updated. Put
in a descriptive title like "Announce ticket update". Under "Meet all of
the folllowing conditions" select "Ticket: is..." and then select
Updated. In the "Perform these actions" section select "Notification:
Notify target" then select Zulip.
</p>
<p>
Next we need need to enter the message body into Message. You can use
Zulip markdown and the Zendesk placeholders when creating your message.
You can copy this example template:
</p>
{% raw %}
<pre><code>Ticket [#{{ ticket.id }}: {{ ticket.title }}]({{ ticket.link }}), was updated by {{ current_user.name }}
* Status: {{ ticket.status }}
* Priority: {{ ticket.priority }}
* Type: {{ ticket.ticket_type }}
* Assignee: {{ ticket.assignee.name }}
* Tags: {{ ticket.tags }}
* Description:
``` quote
{{ ticket.description }}
```</code></pre>
{% endraw %}
<img src="/static/images/integrations/zendesk/006.png"/>
<p>Finally, click Submit.</p>
<p>
<b>Congratulations! You're Done!</b><br/> When a ticket is updated
you will see a notification like the following, to the stream
<code>zendesk</code>, with a topic that matches the ticket's subject
name:
</p>
<img class="screenshot" src="/static/images/integrations/zendesk/007.png"/>