node-freshdesk-api

Node wrapper for Freshdesk v2 API

Usage no npm install needed!

<script type="module">
  import nodeFreshdeskApi from 'https://cdn.skypack.dev/node-freshdesk-api';
</script>

README

Node Freshdesk SDK Build Status

Node wrapper for Freshdesk v2 API

NPM

Install

npm i node-freshdesk-api

Usage

var fd = require('node-freshdesk-api');
var freshdesk = new fd('https://domain.freshdesk.com', 'yourApiKey');

Functions and Responses

Tickets

  • createTicket(ticket, callback) - Create a new ticket, list of parameters
  • getTicket(id, callback) - Get a ticket by its id
  • updateTicket(id, ticket, callback) - Update a ticket by its id, list of parameters
  • deleteTicket(id, callback) - Delete a ticket by its id
  • restoreTicket(id, callback) - Restore a ticket by its id
  • listAllTickets(filter, callback) - List All Tickets, check list of filters
  • listAllTicketFields(callback) - List All Ticket Fields
  • listAllConversations(id, callback) - List All Conversations of a Ticket by its id
  • listAllTimeEntries(id, callback) - List All Time Entries of a Ticket by its id

Conversations

  • createReply(id, reply, callback) - Create a Reply for a ticket by its id, list of parameters
  • createNote(id, note, callback) - Create a Note for a ticket by its id, list of parameters
  • updateConversation(id, conversation, callback) - Update a conversation by its id, list of parameters
  • deleteConversation(id, callback) - Delete a conversation by its id

Contacts

  • createContact(contact, callback) - Create a new contact, list of parameters
  • getContact(id, callback) - Get a contact by its id
  • updateContact(id, contact, callback) - Update a contact by its id, list of parameters
  • deleteContact(id, callback) - Delete a contact by its id
  • listAllContacts(filter, callback) - List All Contact, check list of filters
  • listAllContactFields(callback) - List All Contact Fields
  • makeAgent(id, callback) - Make a contact an Agent, read more

Companies

  • createCompany(data, callback) - Create a new company record using parameters
  • getCompany(id, callback) - Get company by ID; read more
  • listAllCompanies(callback) - List all companies; parameters
  • updateCompany(id, data, callback) - Update a company by ID; parameters
  • deleteCompany(id, callback) - Delelete a company by ID, read more

Examples

Create a new ticket

freshdesk.createTicket({
    name: 'test ticket',
    email: 'test@test.com',
    subject: 'test sub',
    description: 'test description',
    status: 2,
    priority: 1
}, function (err, data) {
    console.log(err || data);
})

Update a ticket

freshdesk.updateTicket(21, {
    description: 'updated description',
    status: 2,
    priority: 1
}, function (err, data) {
    console.log(err || data);
})

Get a ticket

freshdesk.getTicket(21, function (err, data) {
    console.log(err || data);
})

Delete a ticket

freshdesk.deleteTicket(21, function (err, data) {
    console.log(err || data);
})

Contributors

Feature Request, Bugs and Ideas can be added here.

About Author

Built with <3 by Arjun Komath, arjunkomath@gmail.com

License

See the LICENSE file for license rights and limitations (MIT).