Custom actions for Freshsales Suite

Hi team!

Although Freshsales Suite APP SDK documentation does not have any mention to Routing Automation - Custom actions (feature from Freshcaller), Freshworks support told us that it would be possible to build an app for Freshsales Suite using this feature.

So we built it, but the app is not shown to be selected on the Freshsales Suite Routing Automation:

I’m testing in my test account, but in customer’s account, it does not appear either.

Here’s the configuration files:

actions.json

{
    "requestAgent": {
        "description": "Request Agent",
        "display_name": "Request Agent",
        "parameters": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "properties": {
                "input": {
                    "type": "string"
                }
            },
            "required": [
                "input"
            ],
            "type": "object"
        },
        "response": {
            "properties": {
                "agent_email": {
                    "type": "string"
                }
            },
            "type": "object"
        }
    }
}

manifest.json

{
    "engines": {
        "fdk": "8.6.7",
        "node": "14.21.1"
    },
    "platform-version": "2.2",
    "product": {
        "freshworks_crm": {
            "events": {
                "onAppInstall": {
                    "handler": "onAppInstallCallback"
                },
                "onContactUpdate": {
                    "handler": "onContactUpdateCallback"
                },
                "onExternalEvent": {
                    "handler": "onExternalEventCallback"
                }
            },
            "functions": {
                "requestAgent": {
                    "timeout": 20
                }
            }
        }
    },
    "whitelisted-domains": [
        "https://*.myfreshworks.com"
    ]
}

I can simulate the action with success:

PS: I can provide the ticket ID from Freshworks support, the app code and the account credentials in private if needed.

Well, I kept testing and I found out the solution. Certainly it should be easier or documented somewhere.

So:

  • The app for routing automations - custom actions must be scoped to product Freshcaller, so in manifest.json, it need to be:
{
  "platform-version": "2.2",
  "product": {
    "freshcaller": {
      "functions": {
        "requestAgent": {
          "timeout": 20
        }
      }
    }
  },
  "whitelisted-domains": [
    "https://*.myfreshworks.com"
  ],
  "engines": {
    "node": "14.21.1",
    "fdk": "8.6.7"
  }
}

ps: since I had other functionalities for the sales app, now I have two separate apps.,

  • The app must be installed in the Freshcaller account associated with the Freshsales Suite account. How will you know the account address? When you access the developer portal, it lists to you all accounts you have access. It’s a bit difficult to find out the correct one, since associated accounts urls are auto generated with a lot of numbers, like newaccount999999.freshcaller.com

  • So now you need to access the account and install the app. But when accessing it, you are redirected to the page admin/numbers. There’s no buttons on the page to access any other admin configs, you need to enter in the url the path: admin/mkp-gallery.

  • Now you have access to the Freshcaller app gallery and can install the app.

  • After installing it, it will be shown on the Freshsales Suite Rounting Automation settings.

I hope this helps someone.

2 Likes

Thank you for sharing the outcomes of your experience @samuelpares
We will check this and find a way to document the same - appears like a miss on our part.

1 Like

Thinking about it now, what lead us to try to create the events from freshcaller in an app scoped to product freshworks_crm was because in freshsales suite settings, we have two distinguish shortcuts for the marketplaces of crm and chat, but not to the caller:

So, I guess that the best solution would be just to add the shortcut for caller marketplace too :wink:

1 Like

This topic was automatically closed 6 days after the last reply. New replies are no longer allowed.