Is it possible to have multiple locations for a module

I’m developing a custom notes app using the Freshworks App SDK. I want to know if it’s possible to have multiple locations/placeholders to have the app appear. I would like it to show up in the ticket_sidebar as well as the ticket_conversation_editor inside a support ticket, is this possible for one app?

Or do I need to create a separate app to add the second location?

Placeholders sdk documentation: Freshworks Developer Docs | Include placeholders for app deployment

Manifest.json snippet:

{
“platform-version”: “3.0”,
“modules”: {
“support_ticket”: {
“location”: {
“ticket_sidebar”: {
“url”: “index.html”,
“icon”: “styles/images/icon.svg”
}
}
},

“engines”: {
“node”: “18.19.0”,
“fdk”: “9.2.0”
}
}

Hi @Rhea_Le

Welcome to the Freshworks developer community :raised_hands:
To render your app in different locations, specify the preferred placeholders in the manifest.json file. Under the location attribute, define each location where your app should appear. For further guidance on setting up location attributes and available options, please refer to the official documentation.

{
  "platform-version": "2.3",
  "product": {
    "freshdesk": {
      "location": {
        "ticket_sidebar": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        },
        "full_page_app": {
          "url": "full_page.html",
          "icon": "styles/images/icon.svg"
        }
      },
      }
  },
  "engines": {
    "node": "18.15.0",
    "fdk": "9.1.2"
  }
}

@Kithiyon Hi there, I’m using platform version 3.0. But I wanted to know if it was possible to add multiple locations for the same module. For example, I would like to add my custom app for the support_ticket to be located in the ticket_sidebar as well as the ticket_conversation_editor. Is this possible?

The following resulted in an error:
{
“platform-version”: “3.0”,
“modules”: {
“support_ticket”: {
“location”: {
“ticket_sidebar”: {
“url”: “index.html”,
“icon”: “styles/images/phone-book.svg”
},
“full_page_app”: {
“url”: “full_page.html”,
“icon”: “styles/images/icon.svg”
}
}
}
},
“engines”: {
“node”: “18.19.0”,
“fdk”: “9.2.0”
}
}

Hello @Rhea_Le

Yes, It’s possible

I created a new app with multiple location placeholders, and it’s functioning as expected on my end. I’ve included a screenshot and code snippet below for your reference to help illustrate how it’s set up. If you could share the exact error message you’re seeing, that would allow me to better understand the issue and assist you more effectively.

{
  "platform-version": "2.3",
  "product": {
    "freshdesk": {
      "location": {
        "ticket_sidebar": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        },
        "ticket_conversation_editor": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        }
      }
    }
  },
  "engines": {
    "node": "18.15.0",
    "fdk": "9.2.0"
  }
}

Note:
Are you trying to create a global app?

If you are trying to create a global app. your manifest.json file should be like this

{
  "platform-version": "3.0",
  "modules": {
    "common": {
      "location": {
        "full_page_app": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        }
      },
      "requests": {}
    },
    "support_ticket": {
      "location": {
        "ticket_sidebar": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        },
     "ticket_conversation_editor": {
          "url": "index.html",
          "icon": "styles/images/icon.svg"
        }
      }
    },
    },
  "engines": {
    "node": "18.16.1",
    "fdk": "9.1.0"
  }
}
1 Like

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