Getting started

We recently reorganized the docs. If you can't find something, see the new sections in the dropdown on the left.

The Zendesk Apps framework (ZAF) v2 lets you add features to, or build integrations with, a Zendesk product. Because the apps run in iframes in the product, you can build apps with any technology you like, including server-side technologies. The framework also gives your apps access to various product resources using consistent APIs across supported Zendesk products.

How does it work?

All apps have a manifest.json file that specifies one or more locations in one or more Zendesk products, such as the ticket sidebar or the nav bar. The locations are where iframes can appear in the product. You specify the page to display in the iframe at the specified location. Example:

{
  "location": {
    "support": {
        "ticket_sidebar":  "assets/start.html"
    }
  }
}

You can then build the app using any client-side or server-side technology you like. If you only use client-side technologies like HTML, JavaScript, and CSS, you can let Zendesk host the app. If you prefer using server-side technologies, you can host the app on a remote server.

If you want a page in your app to interact with framework APIs, import the ZAF SDK. Example:

<script src="https://static.zdassets.com/zendesk_app_framework_sdk/2.0/zaf_sdk.min.js"></script>

With the SDK in place, you can create a ZAFClient object that lets you communicate with the host Zendesk product:

var client = ZAFClient.init();
client.get('ticket.requester.name').then(function(data) {
  console.log(data); // { "ticket.requester.name": "Mikkel Svane" }
});

To learn more, see Working with framework APIs.

Documentation

For reference documentation, see: