Giter Site home page Giter Site logo

zendeskcodingchallenge's Introduction

Zendesk Coding Challenge 2021 ๐Ÿ”–

This is a Zendesk Ticket Viewer for the Zendesk customer service tool. This ticket viewer was created by me as part of the interview process for a Zendesk Software Engineer Internship for the Summer of 2022.


Description:

This Zendesk Ticket Viewer uses the Zenpy library to make a call to the Zendesk API and to display all tickets at the CLI.

A screenshot of the zendesk ticket viewer menu

Tickets are stored locally in a ZendeskTicket object. This object has a tickets data member that is populated by a python dictionary with the first API call. For this python dictionary, each key is the Ticket ID Number and the value is a single Ticket Dictionary. This structure is ideal as it allows rapid access of ticket information based on key queries that match ticket fields.

A screenshot of a single ticket display

The ZendeskTicket class includes methods that do the following:

  • display all tickets
  • display all search tags
  • display all tickets with a search term in the subject field
  • display all tickets with a search term in the description field
  • display all tickets with a tag identifier
  • display a ticket with a particular ticket ID number
  • update local ticket data with a new Zendesk API call
  • change the number of tickets displayed per page (default is 25 tickets per page)

A screenshot of a tags display

This Zendesk Ticket Viewer is run as a script from main() but the ZendeskTicket can also be used as an imported class. There are detailed docstrings regarding parameters, returns, and data validation for each class method and for other defined functions used by the class.

I hope you enjoy my work!


Program Requirements:

  • Sign up for a free trial with Zendesk.
  • Take note of the email address you use, your password, and your subdomain. You will need this information to create your login credentials for Zendesk API calls.
  • Log in to your account and enable password access for Zendesk API calls.
  • Install the Zenpy library on your computer.
  • Fork this repo.
  • Clone the forked copy of this repo to your local computer.
  • Follow the directions in credentials.py to add your login credentials.
  • Need tickets to test? Post the included tickets.json file to your new account.
  • Run ZendeskCodingChallenge.py

Troubleshooting:

  • Check that your email address, password, and subdomain are all typed correctly, enclosed by quotation marks, contain no extra spaces or characters, and no extra punctuation.
  • Passwords that included single or double quotation marks may not work; update your password and try again.
  • New Zendesk accounts have password authentication for API calls disabled by default; go to https://YourSubdomain.zendesk.com/admin/apps-integrations/apis/apis/settings, where YourSubdomain is the subdomain you chose in your free trial sign up, and change this setting to enabled.
  • Try posting the tickets.son file to your new account using cURL:

curl https://{YourSubdomain}.zendesk.com/api/v2/imports/tickets/create_many.json -v -u {your_email_address}:{your_password} POST -d @tickets.json -H "Content-Type:application/json"


authored by Michelle Zelechoski

zendeskcodingchallenge's People

Contributors

mzrithm avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.