Skip to content

kunal-singhh/notion-freshdesk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Freshdesk Notion App Notion Freshdesk

Notion App Integration for creating and sharing Notion pages as self help articles via Ticket Replies Banner screenshot-boards

Technologies Used

  • Freshdesk SDK

    • Data Methods
    • Instance Methods
    • Interface Methods
    • Product Events
    • Installation Parameters(iparams)
  • Notion API

    • Working with Notion Databases, Pages, Properties
    • Pagination Using Cursor
    • Notion API Integration
    • Filtering ,Sorting data from API
  • Crayons Library

    • Using Custom Styled Components
    • Working with Custom Component Events
    • Using reusable classes like fw-flex for designing and layout

Steps to Setup your own Notion <-> Freshdesk App

  1. Create a Notion Account
  2. Duplicate this template for database template
  3. Create a new notion integration and copy the 50 character api_key from https://www.notion.so/my-integrations

notion-integration

  1. Share the database with the integration to access it using API.

notion-integration

  1. Clone the repo git clone https://github.com/kunal-singhh/notion-freshdesk
  2. Type command fdk run to run your app
  3. Open the url http://localhost:10001/custom_configs for setting up your api_key copied at point 3 and paste your api key with Name

iparams

  1. Go to your freshdesk account ticket page and append it with ?dev=true to test the application eg: https://<YOUR_DOMAIN>.freshdesk.com/a/tickets/4?dev=true

Development Platform Use Cases in App

Feature Purpose
App lifecycle methods app.initialized(), app.activated()
Data methods To get ticket details, user details
Interface methods To open/close modal, send/receive data across instances and create new ticket reply or append data to ticket reply
Request methods For api calls post, get etc
Instance methods To get context inside modal - sharing data to-and-fr
Installation params custom installation page (iparams.json is used) to collect api keys and user details

Notes

  • We Can not invoke interface methods from modal hence pass them back to parent and then invoke interface methods
  • instance methods can be used to send data between different instances modal <-> app