> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Front

> Connect Fini to Front via OAuth and map AI agents to inboxes so they reply on email and chat conversations across your support team.

Connect Fini to Front so your AI agent can read incoming conversations across your email and chat inboxes, draft replies, and respond on the inboxes you choose. Configuration lives entirely on the Fini side once Front is authorized: agent-to-inbox mapping, reply timing, and reply-behavior rules are all set from the Front deploy page.

<Note>
  **Two deployment modes.**

  * **Full Front integration** (Fini replies on incoming Front conversations): the entire page below applies, including Agent Routing and Reply Settings.
  * **Widget-only deployment** (Front is just a destination where the Fini widget escalates conversations): authorize the OAuth connection on this page, then configure the escalation channel under [Widget → Escalate to Front](/en/deploy/widget#escalate-to-front) instead. You can skip Agent Routing and Reply Settings here.
</Note>

## Before you connect

You'll need:

* A **Front account** with permission to install third-party apps. Typically a company admin or a teammate with App Marketplace permissions.
* The **email address of the teammate** Fini should act as when posting replies. Fini looks this teammate up in your Front workspace during authorization.
* At least one **agent** already created in Fini. If you haven't created one yet, do that first from [Agent home](/en/configuration/agent-home).

<Note>
  Front routes conversations into inboxes. If your team uses multiple inboxes (one per product, region, or channel), you can map a different Fini agent to each inbox. Single-inbox setups can leave the inbox selection empty and let one agent respond to everything.
</Note>

## What Fini does with your Front

The OAuth scopes Fini requests are managed in Front's app configuration. Front shows the full permission list on the consent screen during authorization. The operations Fini performs on your workspace:

* **Read teammate identity**: looks up the Front teammate you specified by email so Fini knows which user to act as.
* **Read conversations, messages, and comments**: required so the agent can understand context and compose replies.
* **Post replies as messages or comments**: as the authorized teammate, when a mapped agent decides to respond.
* **Read and create tags**: Fini creates and uses Front tags to mark conversation state: `fini_escalated_human_agent`, `fini_resolved`, and `fini_waiting_for_customer`. Fini also creates `Fini Skip Webhook` so you can opt specific conversations out of automated processing. If tags with these names already exist, Fini reuses them.

Fini's Front app is listed on the [Front App Store](https://front.com/integrations/fini), where the full permission set is published in line with Front's app guidelines. We recommend reviewing it before authorizing.

## Connect Front

When you first open the Front deploy page, you'll see an **Authorize Integration** button. Front uses pure OAuth, so there's no subdomain or credentials to enter ahead of time.

<Frame>
  <img src="https://mintcdn.com/fini/zctNPVP1t-q6dPqV/images/en/deploy/front/disconnected.png?fit=max&auto=format&n=zctNPVP1t-q6dPqV&q=85&s=c8cf5f96d88326653a98a100e0e6c978" alt="Front deploy page before connecting" width="1680" height="1050" data-path="images/en/deploy/front/disconnected.png" />
</Frame>

<Steps>
  <Step title="Click Authorize Integration">
    A Front authorization window opens. Sign in with an account that has permission to install apps in your Front workspace.
  </Step>

  <Step title="Approve the requested permissions">
    Front shows the permission list Fini requests. Review and approve.
  </Step>

  <Step title="Return to Fini">
    Once Front redirects you back, the page expands to show your connection metadata and the Agent Routing and Reply Settings sections appear.
  </Step>
</Steps>

<Frame>
  <img src="https://mintcdn.com/fini/zctNPVP1t-q6dPqV/images/en/deploy/front/connected.png?fit=max&auto=format&n=zctNPVP1t-q6dPqV&q=85&s=074fc731e5dab08e287092b37d85edad" alt="Front deploy page after connecting, showing all configuration sections" width="1680" height="1050" data-path="images/en/deploy/front/connected.png" />
</Frame>

## Configure your deployment

After connecting, three sections appear on the Front deploy page. Each is independent. You can configure them in any order.

### Connection Details

Read-only metadata about the integration:

* **Connected at**: the timestamp of the most recent successful authorization.
* **Connected by**: the team member whose Front account authorized the integration.

If you ever need to swap the connected Front account, disconnect first (see [Troubleshooting](#troubleshooting)) and re-authorize from the new account.

### Agent Routing

Decides which Fini agent replies on which Front inbox, separately for **email** and **chat**.

For each channel (Email Agent and Inbox Mapping, Chat Agent and Inbox Mapping):

1. Click **Add Agent** to create a new mapping row.
2. In the new row, click **Select an agent** and pick the Fini agent that should respond.
3. Click **Select inboxes** and select the Front inboxes that agent should respond to.

<Frame>
  <img src="https://mintcdn.com/fini/zctNPVP1t-q6dPqV/images/en/deploy/front/inbox-dropdown.png?fit=max&auto=format&n=zctNPVP1t-q6dPqV&q=85&s=3d4d825db0b3848dd0f181d8eee7839d" alt="Inbox selection dropdown showing the available Front inboxes" width="1440" height="1264" data-path="images/en/deploy/front/inbox-dropdown.png" />
</Frame>

<Tip>
  If you leave **Select inboxes** empty for an agent, that agent becomes the **wildcard**: it will respond to every inbox on that channel that doesn't have an explicit mapping. Always configure at least one wildcard so unrouted conversations still get a reply.
</Tip>

Click **Add Agent** again to map additional agents to additional inbox sets. Useful when you want different agents for different products, regions, or escalation tiers. An inbox can only be mapped to one agent per channel; once an inbox is selected for one agent, it's hidden from the other agents' dropdowns.

#### How Fini routes conversations at runtime

When a conversation reaches Fini, Front's webhook payload includes the inbox the message arrived on. Fini matches that inbox ID against the agent routing you configured:

1. Looks for an explicit mapping where the inbox is in the agent's `Select inboxes` list. If found, that agent responds.
2. If no explicit match, falls back to the **wildcard agent** (the one you mapped without selecting any inboxes).
3. If no wildcard either, the conversation gets no reply.

Unlike Intercom, Front's API tells Fini the inbox directly, so no custom-attribute setup is needed on the Front side.

### Reply Settings

Controls when Fini posts a reply and whether direct replies assign the conversation back to Fini.

* **Email response delay (seconds)**: wait time before the agent posts on email conversations.
* **Chat response delay (seconds)**: wait time before the agent posts on chat conversations.
* **Assign conversations to Fini on direct reply**: when enabled, Fini assigns the Front conversation to Fini only when the agent sends a direct reply. Leave it enabled if your team wants Front ownership to move to Fini after the agent visibly replies; turn it off if assignment should stay with the current Front teammate or inbox owner.

Setting `0` makes the agent reply as soon as it has an answer. Higher values can make the agent feel less robotic, or give human agents a chance to take over first.

### Configure reply behavior

Reply Behavior is the higher-level rule layer that decides *when* the agent should post a direct reply, leave an internal comment, or stay silent. Click **Go to Reply Behavior Settings** on the Front page to configure these rules. They apply across all channels, not just Front.

## Skip a specific conversation

Front conversations can be opted out of Fini processing without disabling the integration: tag the conversation with **`Fini Skip Webhook`** in Front. Fini checks for this tag on every incoming event and skips reply processing when it's present.

This is useful when:

* An agent is actively handling a conversation and doesn't want the agent to interject.
* A conversation is a test or a duplicate that shouldn't trigger automated responses.
* You're triaging a conversation manually before deciding whether the agent should be involved.

The `Fini Skip Webhook` tag and Fini's conversation-status tags are created automatically during authorization (if they don't already exist).

## Verify it's working

1. From your connected Front workspace, send a test message to one of the inboxes you've mapped.
2. Wait the configured response delay, then check the conversation. The mapped Fini agent should have posted a reply.
3. If nothing appears, see [Troubleshooting](#troubleshooting).

## Troubleshooting

**Authorization failed or expired.** Click **Authorize Integration** again from the Front deploy page. Make sure you're signing in with a Front account that has app-installation permission for the workspace.

**The agent isn't replying.** Check, in order:

1. Is an agent mapped to the inbox the conversation came in on? (Empty inbox selector = "wildcard / all inboxes"; an explicit inbox list excludes everything else.)
2. Does the conversation have the **`Fini Skip Webhook`** tag? If so, Fini deliberately skips it.
3. Is the agent enabled and trained?
4. Is the response delay much higher than expected?
5. Are there [Reply Behavior](/en/automations/reply-behavior) rules that suppress replies on this channel or conversation type?

**Front assignment didn't move to Fini.** In **Reply Settings**, confirm **Assign conversations to Fini on direct reply** is enabled. Fini only applies that assignment after it sends a direct reply; internal comments and no-reply outcomes do not move assignment to Fini.

**An inbox doesn't show up in the dropdown.** The dropdown only lists inboxes Fini has access to. If you added a new inbox in Front after authorizing, refresh the Fini page; the inbox list is fetched on page load. Also check that the inbox type matches the channel (the email channel only lists email inboxes; the chat channel only lists chat inboxes).

**The agent is replying twice on the same message.** Often a sign that two agents are mapped to overlapping inboxes, or a wildcard agent is firing alongside an explicit mapping. Audit the Agent Routing section: each inbox should appear in at most one agent's `Select inboxes` list per channel.


## Related topics

- [Overview](/en/api-reference/attributes.md)
- [Widget](/en/deploy/widget.md)
- [Database and Warehouse Connections](/en/api-reference/database-warehouses.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.