Community topics about Front APIs and SDKs
Recently active
If your team has SLA agreements you can’t afford to miss, or you already page on-call teammates for urgent issues, you might want to consider automating this using Front Rules and Application Requests.This post will guide you through how to add a Front Application Request to trigger a PagerDuty incident, and how to enable that from a Rule in Front. 1. Create a PagerDuty ServiceThe PagerDuty Service is required as the “entry point” for creating the incident. When creating the PagerDuty Service, select the Events API V2 integration;Creating a PagerDuty Service2. Create your Front Application RequestHead into Front > Settings > Developers, and create a new App. Give it a useful name like “PagerDuty”. Click into the Servers tab in your new App, and create a server. The PagerDuty events API is hosted at https://events.pagerduty.com, so we can add that as the Server Origin value. No auth is needed here - this is specified elsewhere.Click Save. 3. Add Application RequestClick into the
Using fetchPath() I can retrieve the current conversation URL, but the function returns a Promise Object.How do I get the “PromiseResult” value from the object, ie. how do I get the path into a string?Front.contextUpdates.subscribe(context => { let path = context.fetchPath();});
Does anyone have any insight or tips to share regarding using the Front API in PowerApps via PowerAutomate? I've been considering exploring this possibility.
We are happy to announce that you can now access knowledge base API endpoints through the Core API. These endpoints allow you to read and update your internal and external Front knowledge bases. With the API, you now have the flexibility to process your knowledge base content for various purposes, including advanced display on different websites and additional means of importing content. Read the docs on our Developer Portal to start using the knowledge base API endpoints.
We are thrilled to announce a new enhancement to our Core API knowledge base resources: Endpoints now return a slug for article and category pages! The slug is a user-friendly, readable string that can be used to construct URLs to your knowledge base articles and categories. This addition makes it easier than ever to integrate and surface your knowledge base content within the search results or display components of systems external to Front's knowledge base, such as a community hub or other resource center. The following endpoints return the URL slug in their response:List articles in a knowledge base Get a knowledge base article List categories in a knowledge base Get a knowledge base category To construct the full URL, use the following pattern:<protocol>://<domain>/<locale>/<slug> For example, if an article slug returns as /articles/57 ...the full article URL in the EN locale would be:https://yourDomain.com/en/articles/57 Happy coding!
Hi,We are currently integrating the chat SDK into our apps, and while reviewing the documentation, we came across the Identify Users page.We have a few questions regarding the use of userId for identification, as we do not have user phone numbers in all cases and were hoping to use userId instead of email.Specifically, we would like clarification on the following: What is the userId? Is it an ID that we define within our system, or is it the contact ID generated by Front? Behavior when using a custom userId: If the userId is defined by us, will Front create a new contact when it encounters the userId for the first time, regardless of the email or phone provided in the contact object? If so, how can we prevent the creation of duplicate contacts? We already have a large number of contacts in Front and want to avoid duplication. Behavior when userId is defined by Front: If the userId is generated by Front, will it simply add the email and phone provided in the contact object to the e
I have integrated the Chat Widget code in my iOS app. It was working very good.But today I noticed suddenly getting error in RED “Not delivered - connection issues” I have noticed the first message is delivered successfully but after that always getting the mentioned error.When I tried to run the code in my browser it shows AxiosError. What could be the reason?Here is my latest code<html> <body> <script src="https://chat.frontapp.com/v1/chat.bundle.js"></script> <script> function initChat(name, userId, userHash) { window.FrontChat('init', { chatId: 'ce4c58cd0f7cbcd3ed3eaf3b0b0XXXX', useDefaultLauncher: true, shouldShowWindowOnLaunch: false, shouldMobileReloadOnClose: true, name: name, userHash: userHash, userId: userId, onInitCompleted: () => {
Hello, I’m looking to build a plugin for Front. The concern I have is about security. The recommended pattern to use token verification is embed the “secret” in the search param rather than a header.Is there a way to embed the token in the header of the request instead so that it’s not obvious from the url?https://dev.frontapp.com/docs/security#token-verification
I put together a simple TypeScript template app to reliably handle incoming Application Webhook events. It can be deployed to Railway in a couple of clicks.Where can I try it?You can install the template here → Front.com Application Webhook ReceiverHow does it work?At a high level, there’s an exposed API endpoint which you register with Front as the destination for for your webhook events.On receipt, various security and validity checks are performed, the event is added to a background processing queue, and the app quickly responds to Front, acknowledging successful receipt. You then have a secondary process monitoring the queue, which is where you add your logic to save the events to your own data store, or performing your custom business logic to handle them.What tech is used?This is a template which can be deployed on Railway in a couple of clicks. The API router and middleware is powered by Hono - a fast, lightweight web framework.The background job queue uses BullMQ, built on Redi
I’ll be working on NetSuite > Front.Just starting up the post, here!
You can now download attachments via the following resource-specific endpoints:Download attachment for a comment Download attachment for a message template Download attachment for a messageThe ability to download message template attachments is a new benefit. The other benefit of these endpoints is that Front validates that the requester has access to the resource in question versus only validating the attachment access credentials. Fetch attachments via their download URLFront recommends you fetch attachments via their download URL (which includes resource-specific routing) versus providing only the ID to the generic Download attachment endpoint.
We have developed a custom app for Front to display insights, and we would like to store the app's configuration directly within the app settings for ease of access and management. Could you please guide us on the following points:Is it possible to store custom configuration data within the app settings in Front? If yes, what is the recommended approach or API to achieve this? Are there any limitations or best practices we should consider while implementing this functionality?Your assistance would be greatly appreciated, as it will help us optimize our app and ensure a seamless user experience.Looking forward to your guidance.
You can now access entry point data in the Plugin SDK to learn how a Front user opened your plugin. A new property called entryPoint is now available in the context object. Read the full details on our Developer Portal This property allows you to handle different scenarios depending on where the plugin was opened. The current plugin entry points are:SIDEBAR—User opened a plugin in the Front sidebar. COMPOSER_TOOLBAR—User opened a plugin in the composer toolbar while composing a message. CONTACT_HANDLE—User opened a plugin from a Front contact’s phone handle. More information on plugins that open from this entry point in order to make or handle calls will be coming soon!
I understand that Teammate Groups is a relatively new feature, which might explain why it’s not available in the API yet, but I was wondering when/if we might gain access to those groups of Front users that we define and use for managing Inbox access, etc. (found in the app under Settings > Company > Teammate groups).So far, references to “teammate groups” in the API documentation seem to reference contact groups owned by a team member, which is not what I’m looking for.Perhaps this question is also related to Front’s SCIM functionality–is there any documentation related to that functionality?
Our Front workflow involves generating emails and scheduling their sends on a daily basis. Our current flow is:Generate the email text and attachments programmatically. The email content includes a blurb about the time the email should be scheduled (roughly based on the local time of the recipient) Send a POST to `/drafts` with the email content and attachments On success, open the link to the draft Manually schedule the send according the the email content’s scheduled send blurb, and delete the blurb in the email.The only manual part of this flow is that we need to manually schedule the send (and delete the blurb saying the send time, but that’s a byproduct), which is a hassle. I haven’t been able to find a way to programmatically schedule sending via the API but that would allow us to do this whole flow programmatically. It doesn’t look like there’s anything in the Messages or Drafts APIs. Does this functionality exist? If not, I’m curious why and if it might ever be on the roadmap.
Is it possible to separate comments, whether from an original comments or from two merged conversations?
I face a very weird situation when trying to convert the message.created_at to the timestamp. Firstly, my understanding is that the date type for the created_at is float. Is that correct? So the number is the seconds passed since epic, and fraction is the millisconds. Did I understand it correctly? Then I used the following code to turn it into Java Date object.new java.util.Date(TimeUnit.SECONDS.toMillis((long)last_message.created_at.floatValue()))Then I used the following code to transform the Date into stringnew SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS"); There are two things weird:(1) I have two messages, sent in absolutely different time, 20 - 30 seconds apart. But somehow the output of timestamp is exactly the same.(2) For afternoon 1pm, instead showing 13:xx:xx, it shows 01:xx:xx.
The Plugin SDK now offers the delegateNewWindowsToFront utility function. This function allows you to capture link events that open in a new window and handle them through Front. This function replaces the deprecated delegateAnchorClicksToFront function.
You can now use token instrospection to specify an application channel’s name and address.Token introspection is an additional step in the OAuth2 flow where the client sends a request to the external server to retrieve information about the provided access token. This request allows Front to obtain details of the channel from the external service. Read more on our Developer Portal!
We are facing a problem whenever the client disable the app fro app store from as shown in attachment. And then when reenable that app and then try to obtain oauth (access token) via api using existing refresh token within the period of 6 months i.e still refresh token is valid, api provide response {"error":"invalid_grant","error_description":"Invalid refresh token"}
I have a few questions about the chat widget:Is it possible to swap out the current icon for one of our own? Is it possible to have customize the icon and have the ability to show/hide, move the chat bubble around or only show it on specific pages?Thank you!
Looking for a developer to assist in building a custom pipedrive plugin. The existing one is limited in terms of functionality, we’d like to create one that allows us to create a proper deal/opportunity with more information/fields. Please comment contact details/info so i can reach out :)
The Update conversation endpoint now correctly updates conversation statuses in personal inboxes. Before the update, the status update would only be applied at the team-level. The status update did not affect private conversations or propagate to the conversation assignee.From now on, the conversation status update will follow the behavior of our rule engine: the status update will be applied to the conversation assignee and owners for private conversations in addition to the shared inbox at the workspace level. This update will gradually be released to all customers over the next week. Please comment below if you want to access it immediately. PS: The update only impacts the conversation status for assignee and private conversation owners. It does not impact the status of the conversation for its followers (participants who are not the assignee or owner of the private conversation).
Team is receiving a draft failure error when trying to send emails?Only one of my gmail channels is having this issue, other gmail channels are not having this. And this channel is working fine on its own. I can send emails in this gmail but in Front I can’t.
Hey everyone, I'm working on setting up an Application Channel to connect to my backend for sending and receiving messages. I'm trying to understand the setup(using the template to help understand), but it feels like the guide leaves out some key details. Here are a few questions I have:When configuring the Channel Type in my app, what exactly is the difference between ‘Contact Types’ (Email, Phone, Custom)? When adding the channel to my workspace, it asks for a token. What value should this be for the template to work correctly? This might relate to question 2, but every time I add the new channel, I immediately get an error that says, “Our access to this account was revoked. New messages will not be imported until you reauthorize,” with a “Reauthorize” button. Clicking it doesn’t trigger anything on the server side, and I’m not seeing any issues in the console logs I added. Any ideas on how to resolve this? Excited to make Front a core tool for our team!
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.