diff --git a/website/docs/connect-data/reference/README.md b/website/docs/connect-data/reference/README.md index eb4a05c4cb..7868e6f8b1 100644 --- a/website/docs/connect-data/reference/README.md +++ b/website/docs/connect-data/reference/README.md @@ -263,6 +263,15 @@ Appsmith also supports integration with various Software as a Service (SaaS) pla
+
+ + Freshdesk + +
+ Freshdesk +
+ +
Gmail @@ -271,7 +280,7 @@ Appsmith also supports integration with various Software as a Service (SaaS) pla Gmail
-
+
Github @@ -280,7 +289,11 @@ Appsmith also supports integration with various Software as a Service (SaaS) pla Github
-
+
+ +
+ + - -
- -
+
-
+
-
+
+ +
+ + - -
- -
+
-
+
-
+
+ +
+ + - -
- -
+
-
+
-
+
+ +
+ + - -
- -
+
-
+
-
+
+ +
+ + - -
- -
+
-
+
-
+
+ +
+ + - -
- -
+
Zendesk diff --git a/website/docs/connect-data/reference/freshdesk.md b/website/docs/connect-data/reference/freshdesk.md new file mode 100644 index 0000000000..583deae071 --- /dev/null +++ b/website/docs/connect-data/reference/freshdesk.md @@ -0,0 +1,300 @@ +--- +title: Freshdesk +hide_title: true +--- + + + +
+

Freshdesk

+ + + +
+ + + +Integrate Freshdesk with Appsmith to manage customer support tickets directly from your app. Create, update, retrieve, and delete tickets, manage ticket statuses and priorities, and handle customer requests—all without leaving Appsmith. + +## Connect Freshdesk + +To connect to Freshdesk, you'll need to authenticate using your Freshdesk domain and API key. This allows the integration to securely access your support tickets, contacts, and other data. + +### Retrieve Your Freshdesk Domain + +Your Freshdesk domain is the unique subdomain you chose when setting up your Freshdesk account. It's the part before `.freshdesk.com` in your Freshdesk URL. + +*Example:* If your Freshdesk URL is `https://acme.freshdesk.com`, then your domain is `acme`. + +### Retrieve Your API Key + +The API key is a unique identifier for each agent in your Freshdesk account. You'll use it to authenticate API requests. To find your API key: + +1. Log in to your Freshdesk account. +2. Click on your profile picture in the top-right corner and select **Profile Settings**. +3. On the right pane, click on the **View API Key** option and complete the captcha verification if prompted. +4. Your API key will be displayed. Copy it for use in authenticating with Appsmith. + +:::caution +API keys are not available for accounts on the free plan. You'll need a paid Freshdesk plan to generate and use API keys. +::: + +### Connect to Freshdesk in Appsmith + +1. In Appsmith, create a new Freshdesk datasource. +2. Enter your Freshdesk domain (the subdomain part, e.g., `acme` for `acme.freshdesk.com`). +3. Enter your API key that you retrieved from your Freshdesk account. +4. Once connected, you can create a new query by clicking the respective button in the upper right. + +## Query Freshdesk + +Use the command selector in the query form to pick the Freshdesk operation you need. Each command below lists its parameters along with tips for using them effectively. + +### Create Ticket + +Creates a new support ticket in Freshdesk. You can set the ticket source, status, priority, subject, description, and requester information. For more details, see [Create a Ticket](https://developer.freshdesk.com/api/#create_ticket). + +#### Source `number` + +
+ +Required. Channel through which the ticket was created. Default is Portal (2). Options: 1: Email, 2: Portal, 3: Phone, 7: Chat, 9: Feedback Widget, 10: Outbound Email. + +
+ +#### Status `number` + +
+ +Required. Current status of the ticket. Options: 2: Open, 3: Pending, 4: Resolved, 5: Closed. + +
+ +#### Priority `number` + +
+ +Required. Importance level of the ticket. Options: 1: Low, 2: Medium, 3: High, 4: Urgent. + +
+ +#### Subject `string` + +
+ +Required. Brief title or subject of the ticket. This should briefly describe the issue or request. + +
+ +#### Description `string` + +
+ +Required. Detailed content or description of the ticket. This should provide comprehensive information about the issue or request. + +
+ +#### Requester Id `string` + +
+ +Optional. User ID of the ticket requester. Required if the contact already exists in Freshdesk. + +
+ +#### Name `string` + +
+ +Optional. Full name of the requester. Mandatory if the phone number is set without an email address. + +
+ +#### Email `string` + +
+ +Optional. Requester's email address. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Phone `string` + +
+ +Optional. Requester's phone number. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Unique External Id `string` + +
+ +Optional. A unique external identifier for the requester. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Twitter Id `string` + +
+ +Optional. Requester's Twitter handle. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +### Update Ticket + +Updates the details of an existing ticket in Freshdesk. This allows you to modify ticket metadata such as source, status, priority, subject, description, and requester information. For more details, see [Update a Ticket](https://developer.freshdesk.com/api/#update_ticket). + +#### Ticket Id `string` + +
+ +Required. A unique identifier for the ticket. You can find the ticket ID in the URL when viewing the ticket in Freshdesk. + +
+ +#### Source `number` + +
+ +Required. Channel through which the ticket was created. Options: 1: Email, 2: Portal, 3: Phone, 7: Chat, 9: Feedback Widget, 10: Outbound Email. + +
+ +#### Status `number` + +
+ +Required. Current status of the ticket. Options: 2: Open, 3: Pending, 4: Resolved, 5: Closed. + +
+ +#### Priority `number` + +
+ +Required. Importance level of the ticket. Options: 1: Low, 2: Medium, 3: High, 4: Urgent. + +
+ +#### Subject `string` + +
+ +Optional. Brief title or subject of the ticket. + +
+ +#### Description `string` + +
+ +Optional. Detailed content or description of the ticket. + +
+ +#### Requester Id `string` + +
+ +Optional. User ID of the ticket requester. Required if contact already exists. + +
+ +#### Name `string` + +
+ +Optional. Full name of the requester. Mandatory if the phone number is set without an email address. + +
+ +#### Email `string` + +
+ +Optional. Requester's email address. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Phone `string` + +
+ +Optional. Requester's phone number. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Unique External Id `string` + +
+ +Optional. A unique external identifier for the requester. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +#### Twitter Id `string` + +
+ +Optional. Requester's Twitter handle. At least one of Email, Phone, Twitter ID, or Unique External ID is required for a new contact. + +
+ +### Get Ticket By Id + +Retrieves detailed information about a specific ticket using its unique ticket ID. This command returns comprehensive data about the ticket, including its status, priority, subject, description, and requester information. For more details, see [View a Ticket](https://developer.freshdesk.com/api/#view_a_ticket). + +#### Ticket Id `string` + +
+ +Required. A unique identifier for the ticket. You can find the ticket ID in the URL when viewing the ticket in Freshdesk. + +
+ +#### Embedded Fields `string` + +
+ +Optional. Will include additional data such as Conversations, Company, Requester, and Stats. Options: conversations, requester, company, stats. + +
+ +### Delete Ticket + +Permanently removes a ticket from Freshdesk. Note that this action cannot be undone. + +#### Ticket Id `string` + +
+ +Required. A unique identifier for the ticket you want to permanently delete. You can find the ticket ID in the URL when viewing the ticket in Freshdesk. + +
+ +### Custom Action + +Use **Custom Action** when you need a Freshdesk REST endpoint that is not modeled above. The form lets you supply the HTTP method, path, query parameters, and body. Appsmith automatically injects the API key from your datasource, so you only have to reference [Freshdesk's API docs](https://developer.freshdesk.com/api) for the payload structure. + +When using Custom Action, provide the path without the `/api/v2` prefix. For example, if the endpoint is `/api/v2/search/tickets`, use `/search/tickets` in the Custom Action form. + +*Example:* + +- Search tickets + +
+ +```bash +GET /search/tickets?query="status:2 AND priority:3" +``` + +For more details, see [Filter Tickets](https://developer.freshdesk.com/api/#filter_tickets). + +
+ diff --git a/website/sidebars.js b/website/sidebars.js index 4939461081..065aaf48ad 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -340,6 +340,7 @@ const sidebars = { 'connect-data/reference/aws-lambda', 'connect-data/reference/confluence', 'connect-data/reference/dropbox', + 'connect-data/reference/freshdesk', 'connect-data/reference/gmail', 'connect-data/reference/google-docs', 'connect-data/reference/querying-google-sheets',