Community topics about Front APIs and SDKs
Recently active
Hi allI’m looking to save emails (and attachments) from conversations in Front to my software using its API. I’ve created application requests and can send and receive data with them. I can create a new document in my software using a Front macro but the document is empty, because I don’t know what I should use in Front to save the email and attachments too.Hoping for some pointers!Thanks
We are experiencing issues with long automated messages failing to send.There are carriers that take the long messages and carriers that don’t - we want to just retry the ones that fail. I get that I can circumvent this problem by splitting the long message into multiple small messages and send them separately. But since most of the times the messages are delivered, we don’t want to have to split successful messages because of a few unsuccessful ones.After the message is sent, I am using this endpoint to fetch the message again:"https://api2.frontapp.com/messages/{message_id}”What I want is to see if it errored or not. The issue is that I am getting the field ‘Error Type’ empty even for failed messages.Anyone has any advice here? How can I get from the API the error status of a message?
We are using a front webhook for “all incoming messages” and forward these to our own endpoint. I need to filter out ONLY NEW conversations somehow but it seems quite tricky looking at the webhook payload. We only have a professional account (and wont upgrade to enterprise any time soon). How could I reliably filter out all replies and follow up emails and only keep NEW conversations when processing the webhook event?
Summary Enable creating and managing comment reactions (emoji reactions) via the Front API, similar to how reactions work in the Front UI.Current State The Front API currently supports:Creating comments on conversations Editing existing comments Listing commentsHowever, there's no endpoint to add, remove, or list reactions on comments.Requested FunctionalityPOST /comments/{comment_id}/reactions — Add a reaction to a comment DELETE /comments/{comment_id}/reactions/{reaction_id} — Remove a reaction Include reactions in the comment object when fetching commentsUse Case: AI Agents AI agents that assist support teams need lightweight ways to acknowledge information without adding noise to the conversation thread. Reactions are ideal for this:Acknowledgment signals — An AI agent can react with ✅ to indicate it has processed a comment or completed a task, without cluttering the thread with "Got it" messages Status indicators — Use 👀 to show the agent is reviewing, 🎯 when action is taken, or
Hi,We want to detect order numbers such as PO-123456, PO123456, or PO 123456 in a conversation using an application object. What would the pattern look like? Do I need to create 3 separate application object features?Best Regards
How come we are unable to link anything and everything? I have 2 conversations linked, but I want to link a 3rd conversation with the non-original, but can’t.
Join Front’s community team for three hands-on Connectors workshops in January! Follow along as we automate workflows between Front and your 3rd-party tools. January 15: Salesforce <> Front workflows: Use Connectors to update Salesforce objects directly from your inbox. January 22: HubSpot <> Front workflows: Use Connectors to easily manage customer data in HubSpot. January 29: Jira <> Front workflows: Use Connectors to create Jira tickets from Front with just a few clicks. Register nowCan’t make it? No problem! Join the community group to access self-paced examples and view the workshop videos later. Note: To access Front pre-built Connectors, you must be on the Professional plan or above.
We're excited to announce the launch of our new API analytics dashboard! You can now get a visual overview of your Core API request patterns and rate limiting directly in Front. This dashboard makes it easy to monitor your Core API consumption over time, quickly identify which endpoints are generating the most traffic, and spot where you might be hitting rate limits—all without having to piece together information from logs or error messages. The dashboard features interactive time-series charts showing your total Core API calls (with rate-limited requests clearly highlighted) and an endpoint breakdown table that shows usage by path, including call counts and rate limit hits. You can view data for the last 30 days and drill down into specific time periods. Company admins can access it by navigating to Settings > Developers > API analytics. We hope this gives you better visibility into your integration's performance and helps you optimize your API usage!
We're thrilled to announce a major improvement to how you build macros with Connectors: app request nodes are now available in your flow builder. No more hunting through dynamic variable menus or trying to figure out where to nest your app requests inside action nodes. You can now drop an app request directly into your macro flow by clicking the plus (+) sign and selecting "Send app request"—just like any other node. This makes building Connector-powered workflows far more visual and intuitive.View the docs for step-by-step instructions! Each app request node comes with built-in success and failure paths, so you can immediately see how your workflow branches based on the request outcome. Want to chain multiple requests together? Send a success message to your teammates? Branch based on output values? You can now build these flows exactly how you envision them, with complete flexibility. Plus, your app request outputs automatically become dynamic variables that you can use anywhere dow
You can now configure pagination for application requests! When enabled, the dynamic dropdown in macros loads data page by page as the user scrolls—making it easy for customers to work with larger data sets—no additional macro configuration required. If a dropdown’s app request is paginated (or gets converted to one), the scrolling behavior automatically kicks in for Front teammates. In combination with creating structured, multi-step macros that capture teammate answers, you can now build robust workflows that allow you to execute actions in external systems for the exact item you want to modify. Example use cases:Searching through customer records in a CRM Selecting from a product catalog in an external inventory system Choosing the correct order to refund for a customer For setup details, visit our Help Center.
We've just released an AI prompt file that lets you scaffold Front plugins using any AI coding agent—Claude Code, GitHub Copilot, ChatGPT, Cursor, and more.Simply describe what you want your plugin to do, and the AI generates a working plugin that follows best practices, correctly uses the Front Plugin SDK, and includes built-in debugging tools. What used to take hours of learning our SDK now takes about 10 minutes.Why this matters:Speed - Get from idea to working plugin faster than ever Correctness - The AI handles Front-specific patterns and boilerplate automatically Accessibility - Lower barrier to entry—you don't need to be a Front SDK expert to get started Best practices - Ensures plugins follow established patterns for Front data models and context handling from day one Debugging - Built-in tools show exactly what's being sent to your plugin during developmentWe've built three example plugins using the prompt—a NetSuite manager, subscription manager, and attachment encryptor—to s
The icons for developer apps will now have squared off edges rather than a circular design. This new look aligns with our updated design principles and brings more consistency across the app.You can set the icon in the Settings tab of your developer app:And you’ll see it in Front in places like the list of developer apps and in the rule, macro, and other workflow menus where you select to use a feature from your developer app, such as a channel or app request (Connector).
Hi,We’ve started receiving 400 Bad Request errors when calling the conversations/search endpoint. A request such as:https://api2.frontapp.com/conversations/search/after:1762920938801 now returns:400 Bad Request {"_error":{"status":400,"title":"Bad request","message":"Unsupported search modifier provided."}} We aren’t using any other modifiers, and there have been no changes on our side. The issue began on 23 July 2025. From what I can see, using after: is still documented and there’s nothing in the changelog that suggests this behaviour should have changed.Do you have any insight into why this might be happening or whether anything has recently changed with this endpoint?
Hi everyone,I'm building an automation using n8n together with the Front API, and I'm running into a major challenge regarding attachment ordering inside a Front draft. I would really appreciate deeper clarification from the community or the Front team, because this is critical for my use case.ContextI'm a service provider and we onboard customers into different training programs. Each onboarding email contains multiple PDF attachments in a fixed order.From these files: 6 documents are always the same and are already included inside a Front Message Template 3 documents are unique per customer (contract, schedule, and one additional document), and these three files are generated dynamically in n8n and added to the draft in the same step after the template content is applied Because of this setup, I rely on a Front template for the 6 standard documents, and n8n is responsible for attaching the remaining 3 customer-specific PDFs.Problem: There is no way to create a draft from a template
I am attempting to build a sidebar plugin in Retool so I can utilise all of my existing modules, components, and queries so I can surface important contextual information for my CS team.We all use Google sign in to login to our Retool apps, and we are having a few problems inside Front’s sidebar due to third party cookies.The native Retool sign in screen does not/cannot pop up the Sign in with Google page so I get the below 403 error when I click “Sign in with Google” I have now tried to create a public Retool app, that just has a single “Sign in with Google” button on it (which is just a Retool button), which calls the following script on click: console.log("Front.openUrlInPopup", Front.openUrlInPopup)Front.openUrlInPopup("https://{mydomain}.retool.com/googlelogin", { width: 600, height: 800,})When I load that into the sidebar, the console.log runs (I toggled on the dev tools in Front) and I can see the Front.openUrlInPopup method showing just fine, but nothing happens/the function
I am setting up an integration and using the teammate groups API.I can successfully create a teammate group and fetch it by id: POST /teammate_groups returns 201 with an id like cir_xxx GET /teammate_groups/cir_xxx returns the full group object But when I call:GET https://api2.frontapp.com/teammate_groups Authorization: Bearer <token> Accept: application/json I always get:{ "_links": { "self": "https://api2.frontapp.com/teammate_groups" }, "_results": [] } Same behavior if I use the company host https://company.api.frontapp.com. The same admin token is used for create, get by id, and list, and other endpoints like GET /teams work fine. Am I missing something about how GET /teammate_groups works, or is this a bug with the listing endpoint? Any help would be appreciated.
Check out our new video walkthrough for how to use Connectors to process Stripe refunds directly from Front! Make sure to subscribe to the Connectors space for more examples!
I have a tool that POST a draft, with a body formatted in HTML like:“<p>Based on the information provided, we are pleased to offer you a quote of:</p><ul><li>Transport: EUR <strong>200</strong> (Excl. VAT)</li><li>Insurance (optional, on declared value) : EUR <strong>20</strong> (Excl. VAT)</li></ul>”When I visualize the draft created in Front (app or web browser), I see a blank line before the list:When I inspect the object, I see a <br></br> balise, which was not in the original HTML.This disappears when I’m viewing the draft as another person (viewer mode).And so when I send it, the blank line remains.. This is quite problematic as it gives something weird visually.
Hello Front Community,We have multiple conference rooms in our office, but currently, we don’t have any UI that shows whether a room is occupied or free.When creating a calendar invite in Front, we can add a meeting room. I’m planning to build a simple app that displays all meetings for a particular meeting room for the week.I was wondering if there is an API that allows me to retrieve the list of all meetings for a specific meeting room.Any guidance or examples would be greatly appreciated!
We Are trying to implement a Plugin using the Google Sign Button. The problem is however that the sign does not work because Google is trying to open a new window. That of course doesn't work in the plug-in within the Front app. Hence, my question is if anyone else has built such an integration and how did they manage to integrate Google sign in within the Front app plugin?
Hey folks, I’m build a front plugin with Auth from Clerk, and running into a bunch of issues. The login screen successfully opens + launches a google oAuth login, but then fails due to clerk issues.I’m assuming it has something to do with all network requests causing a 401 when sent from the sidebar UI. Running locally/on prod we’re able to login successfully. Would love a running example in the docs for Clerk apps.
Front on the web does not have a built-in attachment viewer (it opens in a new tab), which I desperately needed for my attachment heavy workflow, so I built a Chrome extension that fills the gap - github.com/i3devco/front-attachment-viewerWhat it does:Enhanced PDF viewing with text selection, search, and navigation Zoom controls for PDFs and images Keyboard navigation and swipe gestures One-click downloads preserving original filenames UI designed to match Front, with dark mode support Supports PDFs and images.Everything runs locally in your browser. No data is sent to external servers.Obviously this is unofficial and not affiliated with Front. Let me know any feedback!
We have recently created some integrations with Front for our company. One of the things we would like to be able to do is see a report that gives us the number of API requests that we have made over a given time period with the option to break it down by API token. This would give us the ability to quickly track down changes in usage over a period of time if we were to start running into rate limiting.Is this something that exists?
We are thrilled to feature recent community contributions to our sample code! Read on to learn what sample apps and code your peers have recently shared with the community. MCP serverMany thanks to @zqush for going above and beyond to provide an example of a Model Context Protocol (MCP) server for Front! An MCP server is a standardized way to connect AI models to external data sources and tools, enabling them to access real-time information and perform tasks securely. PHP code snippetsThank you @jross for contributing PHP versions of common Front code snippets!PagerDuty Connectors exampleThank you @jason for providing an example of how to combine Front Connectors and PagerDuty to send critical SLA alerts!Connectors and AI Assist for IT SupportThank you @gregkn for demonstrating how Connectors and AI Assist are used to power Front’s own internal IT Support service! Contributions like these are invaluable for making every customer’s use of Front more powerful. We deeply appreciate t
Thanks @Javier - Developer Relations for putting together the Build a Plugin prompt - that probably saved me half a day of work here.Using that as a base, I built a plugin allowing users to start Cursor Background Agents, right from a Front conversationSee code at github.com/dugjason/front-cursor-pluginYou can easily self-host anywhere you can deploy a JS app (Vercel and Netlify will work in a couple of clicks).How it worksEnter your Cursor API key - it’s encrypted and set in a cookie on your device, so no data is stored on a remote server (no database required)When you start a Background Agent, you can prompt it however you like from the plugin. The full conversation (messages + comments) are pulled into context for the Cursor Agent, so the LLM has a better picture of what you’re trying to address. It enabled fast prompting like “Fix the issue the customer is reporting”I’d love to know how this plugin works for you!
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.