Dynamic Zendesk Forms

Component ID

2326903

Component name

Dynamic Zendesk Forms

Component type

module

Maintenance status

Development status

Component security advisory coverage

covered

Downloads

999

Component created

Component changed

Component body

Dynamic Zendesk Forms.
=======================

This is a module that helps to integrate zendesk and
your drupal site for rendering support forms and submitting
user input back to zendesk. This module dynamically pulls in form fields
and field rules directly from zendesk admin configuration. Without almost zero
coding we can set up a support form with fields of your choice.

This modules uses the rest apis exposed by zendesk
for powering the support(contactus) form

The forms can be used programmatically or just be embedded via the
provided block(s).

Uses the Zendesk API V2.

Requirements
------------

Once the module is installed and enabled, browse to the Status Report
page (admin/reports/status) and confirm that the curl lib is installed.

Configuration Parameters
---------------------------------
Go to admin/tve/zendesk for configuring the zendesk.

Below are the details about the configurations

Zendesk API key-
Zendesk API Key. This will be used for making Zendesk api calls.

Zendesk username -
The username of your Zendesk agent.

Zendesk API url -
Zendesk API url. The url is where you access your Zendesk backend.

Zendesk Ticket Form -
Select the ticket form that need to be displayed in front end

Zendesk System to Custom Field Mapping Description -
Select proper fields for the description,name and email fields

Configure the Minimum cache lifetime.

Zendesk will provide with separate account and url to access the backend.
For ex:
https://xxxxx.zendesk.com/agent/. Then zendesk api url will be
https://xxxxx.zendesk.com/api/v2/

Steps in the configuration:

1) Once you get hold of the api key and user name and the zendesk url, please click on save.
And if you want to try out you might have to register for a free version of zendesk in https://www.zendesk.com/register#company. And for getting the api key https://support.zendesk.com/entries/21733618-api-key

2) Please make sure to create some ticket form and ticket fields in the zendesk admin section. Please as below
Create forms:
https://xxxx.zendesk.com/agent/#/admin/ticket_forms
Create fields:
https://xxxx.zendesk.com/agent/#/admin/ticket_fields

3) Once you have completed the step1 and step 2. All forms will be listed in the Ticket forms select box.Please select corresponding form.

4) Since email,name and description is mandatory for a ticket in zendesk. You will have to create custom fields for all the 3 in zendesk and configure the corresponding custom field in Zendesk System to Custom Field Mapping Description.

5) Once you are done with it a block will be created and you can configure that block to be displayed anywhere in the site.

Usage:
-------------------------------
Once all the configurations are completed.
A drupal block will be created by name "Zendesk support form".

Alternatively you can call drupal_get_form('zendesk_create_ticket_form')
which will return the form array so that
we can display as per your requirements.

Please visit "/admin/structure/block" and enable the zendesk block.

Useful Additional Information
--------------------------------

Zendesk has ability to create (https://xxxx.zendesk.com/agent/) form and fields.
And we also have option to create multiple forms in zendesk
and attached has many fields has possible.
It has settings like to make it required and also
add conditional field settings in zendesk admin.

Basically this module will pull in the forms
and also form fields from zendesk including the label
and settings and will create a drupal form for the user.

Here are some links to Zendesk API documentation:
General introduction
http://developer.zendesk.com/documentation/rest_api/introduction.html
Tickets
http://developer.zendesk.com/documentation/rest_api/tickets.html
Conditional fields
https://xxxx.zendesk.com/agent/#/apps/conditional-fields
Create forms:
https://xxxx.zendesk.com/agent/#/admin/ticket_forms
Create fields:
https://xxxx.zendesk.com/agent/#/admin/ticket_fields

Supported by iGate