Front website screenshot

Front

Front is a customer operations platform unifying shared inboxes, chat, SMS, social, and CRM workflows. Front exposes a Core API (conversations, messages, channels, contacts, teammates, analytics), a Channels API for custom messaging integrations, a Plugin SDK for embedded UI apps, a Chat Widget, and Connectors for low-code automations.

25 APIs 11 Features
Customer SupportEmailInboxCustomer OperationsCollaborationOmnichannel

APIs

Front Conversations API

Read, create, update, and delete conversations across email, SMS, chat, and social channels. Includes assign, archive, restore, snooze, follow, and merge actions.

Front Messages API

Send and reply to messages on existing or new conversations across any channel; includes inbound import for sync use cases.

Front Drafts API

Create, edit, and delete message drafts assigned to a teammate or a shared inbox.

Front Channels API

Manage channels (email addresses, SMS numbers, chat connectors, custom channels) attached to inboxes.

Front Inboxes API

Manage shared inboxes and teammate access; attach channels to inboxes and read inbox configuration.

Front Contacts API

Manage Front contacts and their handles (email, phone, social). Contacts unify customer identity across channels.

Front Contact Groups API

Group contacts for segmentation and shared visibility across teammates.

Front Accounts API

Read and manage company / account records that group multiple contacts under a single business relationship.

Front Teammates API

Read teammates (Front users) and their availability, roles, and assignments.

Front Teams API

Read team membership and team-scoped resources for routing and analytics.

Front Comments API

Add, list, and remove internal comments on conversations for collaboration.

Front Tags API

Manage tags and apply them to conversations for categorization, automation, and reporting.

Front Topics API

Read AI-generated topics that classify conversation content for analytics and routing.

Front Rules API

Read configured automation rules; rule definitions are managed from the UI but exposed read-only via the API.

Front Signatures API

Read teammate and team signatures used on outbound messages.

Front Shifts API

Manage teammate shifts that drive routing rules and SLA timers.

Front Knowledge Base API

Manage knowledge bases, categories, and articles published to customers and used by Front AI for self-service responses.

Front Analytics API

Generate analytics report exports for conversations, response times, SLA performance, and teammate productivity.

Front Events API

Read the historical event stream for the company (assignments, replies, comments, tag changes) for audit and integration use.

Front Webhooks API

Subscribe to Front events (conversation.assigned, message.received, message.sent, comment.added) with HMAC-signed deliveries.

Front Channels Platform API

Build custom messaging channels that bridge Front to proprietary messaging platforms (e.g. internal portals, niche chat networks).

Front Plugin SDK

Build embedded UI applications that render inside the Front sidebar to surface third-party context alongside the conversation.

Front Chat Widget

Embed Front's live chat widget on a website or web app to capture live conversations into shared inboxes.

Front Connectors

Low-code connector framework for invoking external HTTP APIs from within Front rules and workflows.

Front Links API

Attach hyperlinks from external systems to Front conversations for cross-system traceability.

Collections

Core API

OPEN

Pricing Plans

Front Plans Pricing

10 plans

PLANS

Rate Limits

Front Rate Limits

7 limits

RATE LIMITS

FinOps

Front Finops

FINOPS

Features

REST API at https://api2.frontapp.com/ (JSON)
OAuth 2 and API token authentication
Starter $25/seat/mo (up to 10 seats), Professional $65, Enterprise $105
24% off when billed annually
AI add-ons - Copilot $20, Smart QA $20, Smart CSAT $10, bundle $25 per seat/mo
API rate-limit increase add-on at $200 per +100 rpm/month
Rate limits 50/100/200 rpm by plan, partner OAuth 120 rpm separate bucket
Channels Platform API for custom messaging integrations
Plugin SDK for embedded sidebar applications
Connectors for low-code external HTTP integrations
HMAC-signed webhook deliveries

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
APIReference
APIReference
💰
Pricing
Pricing
🔗
Login
Login
🟢
StatusPage
StatusPage
📰
Blog
Blog
💬
Support
Support
👥
GitHubOrganization
GitHubOrganization
📜
PrivacyPolicy
PrivacyPolicy
📜
TermsOfService
TermsOfService
🔑
Authentication
Authentication
🔗
RateLimits
RateLimits
🔗
Webhooks
Webhooks
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Core API
  version: 1.0.0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Accounts
    type: folder
  items:
  - info:
      name: List Accounts
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/accounts
      params:
      - name: limit
        value: ''
        type: query
        description: Max number of results per [page](https://dev.frontapp.com/docs/pagination)
      - name: page_token
        value: ''
        type: query
        description: Token to use to request the [next page](https://dev.frontapp.com/docs/pagination)
      - name: sort_by
        value: ''
        type: query
        description: Field used to sort the accounts. Either `created_at` or `updated_at`.
      - name: sort_order
        value: ''
        type: query
        description: Order by which results should be sorted
    docs: 'List the accounts of the company.


      Required scope: `accounts:read`'
  - info:
      name: Create account
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/accounts
      body:
        type: json
        data: '{}'
    docs: 'Create a new account.


      Required scope: `accounts:write`'
  - info:
      name: Fetch an account
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/accounts/:account_id
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'Fetches an account


      Required scope: `accounts:read`'
  - info:
      name: Update account
      type: http
    http:
      method: PATCH
      url: https://api2.frontapp.com/accounts/:account_id
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Updates an account.


      Required scope: `accounts:write`'
  - info:
      name: Delete an account
      type: http
    http:
      method: DELETE
      url: https://api2.frontapp.com/accounts/:account_id
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'Deletes an account


      Required scope: `accounts:delete`'
  - info:
      name: List account contacts
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/accounts/:account_id/contacts
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      - name: page_token
        value: ''
        type: query
        description: Token to use to request the [next page](https://dev.frontapp.com/docs/pagination)
      - name: limit
        value: ''
        type: query
        description: Max number of results per [page](https://dev.frontapp.com/docs/pagination)
      - name: sort_by
        value: ''
        type: query
        description: Field used to sort the contacts. Either `created_at` or `updated_at`.
      - name: sort_order
        value: ''
        type: query
        description: Order by which results should be sorted
    docs: 'Lists the contacts associated with an Account


      Required scope: `contacts:read`'
  - info:
      name: Add contact to Account
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/accounts/:account_id/contacts
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Adds a list of contacts to an Account


      Required scope: `accounts:write`'
  - info:
      name: Remove contact from Account
      type: http
    http:
      method: DELETE
      url: https://api2.frontapp.com/accounts/:account_id/contacts
      params:
      - name: account_id
        value: ''
        type: path
        description: The Account ID. Alternatively, you can supply the account domain or external ID as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Removes a list of contacts from an Account


      Required scope: `accounts:write`'
- info:
    name: Custom Fields
    type: folder
  items:
  - info:
      name: List Account's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/accounts/custom_fields
    docs: 'Lists the custom fields that can be attached to an Account.


      Required scope: `custom_fields:read`'
  - info:
      name: List Contact's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/contacts/custom_fields
    docs: 'Lists the custom fields that can be attached to a Contact.


      Required scope: `custom_fields:read`'
  - info:
      name: List Conversation's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/conversations/custom_fields
    docs: 'Lists the custom fields that can be attached to a Conversation.


      Required scope: `custom_fields:read`'
  - info:
      name: List Contact's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/custom_fields
    docs: 'Lists the custom fields that can be attached to a Contact.


      > ⚠️ Deprecated endpoint

      >

      > This endpoint has been deprecated. Please use the fully compatible `GET /contacts/custom_fields` endpoint instead.



      Required scope: `custom_fields:read`'
  - info:
      name: List Inbox's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/inboxes/custom_fields
    docs: 'Lists the custom fields that can be attached to an Inbox.


      Required scope: `custom_fields:read`'
  - info:
      name: List Link's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/links/custom_fields
    docs: 'Lists the custom fields that can be attached to a Link.

      For more information on links, see the [Links](https://dev.frontapp.com/reference/links) topic.



      Required scope: `custom_fields:read`'
  - info:
      name: List Teammate's custom fields
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/teammates/custom_fields
    docs: 'Lists the custom fields that can be attached to a Teammate.


      Required scope: `custom_fields:read`'
- info:
    name: Analytics
    type: folder
  items:
  - info:
      name: Create a new analytics export
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/analytics/exports
      body:
        type: json
        data: '{}'
    docs: 'Create a new analytics export of messages or events (activities) over a specific time span.

      The export will be executed asynchronously. The response will include a link that can be used to retrieve the export
      status & result. Refer to the [Analytics](https://dev.frontapp.com/reference/analytics) topic for details about specific
      metrics.



      Required scope: `analytics:read`'
  - info:
      name: Fetch an analytics export
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/analytics/exports/:export_id
      params:
      - name: export_id
        value: ''
        type: path
        description: The export ID.
    docs: 'Fetch an analytics exports. Refer to the [Analytics](https://dev.frontapp.com/reference/analytics) topic for details
      about specific metrics.


      Required scope: `analytics:read`'
  - info:
      name: Create a new analytics report
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/analytics/reports
      body:
        type: json
        data: '{}'
    docs: 'Create a new analytics report for a set of metrics over a specific time span. Different filters (e.g. Inbox v Tag
      v Teammates) will be joined with AND logic, but the IDs within a filter will be joined with OR logic (e.g. Inbox A or
      Inbox B, Tag A or Tag B).

      The report will be executed asynchronously. The response will include a link that can be used to retrieve the

      report status & result. Refer to the [Analytics](https://dev.frontapp.com/reference/analytics) topic for details about
      specific metr'
  - info:
      name: Fetch an analytics report
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/analytics/reports/:report_uid
      params:
      - name: report_uid
        value: ''
        type: path
        description: The report UID.
    docs: 'Fetch an analytics report. Refer to the [Analytics](https://dev.frontapp.com/reference/analytics) topic for details
      about specific metrics.


      Required scope: `analytics:read`'
- info:
    name: Applications
    type: folder
  items:
  - info:
      name: Trigger application event
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/applications/:application_uid/events
      params:
      - name: application_uid
        value: ''
        type: path
        description: The application UID
      body:
        type: json
        data: '{}'
    docs: 'Triggers an event on behalf of an application. These events can trigger Front workflows, like rules.

      For more information, see the [developer docs](https://dev.frontapp.com/docs/application-triggers#/).



      Required scope: `feature:app_trigger`'
- info:
    name: Channels
    type: folder
  items:
  - info:
      name: List channels
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/channels
    docs: 'List the channels of the company.


      Required scope: `channels:read`'
  - info:
      name: Get channel
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/channels/:channel_id
      params:
      - name: channel_id
        value: ''
        type: path
        description: The Channel ID. Alternatively, you can supply the channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'Fetch a channel.


      Required scope: `channels:read`'
  - info:
      name: Update Channel
      type: http
    http:
      method: PATCH
      url: https://api2.frontapp.com/channels/:channel_id
      params:
      - name: channel_id
        value: ''
        type: path
        description: The Channel ID. Alternatively, you can supply the channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Update a channel.


      Required scope: `channels:write`'
  - info:
      name: Validate channel
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/channels/:channel_id/validate
      params:
      - name: channel_id
        value: ''
        type: path
        description: The Channel ID. Alternatively, you can supply the channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'Asynchronously validate an SMTP channel (this endpoint is irrelevant to other channel types). When you create an
      SMTP channel via the API, [create a channel](https://dev.frontapp.com/reference/post_inboxes-inbox-id-channels) with
      type smtp and the send_as set to the needed email address. You then [configure the email provider](https://help.front.com/en/articles/2081),
      after which you use this endpoint to asynchronously validate the SMTP settings.


      Required scope: `channels:write`'
  - info:
      name: Create a channel
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/inboxes/:inbox_id/channels
      params:
      - name: inbox_id
        value: ''
        type: path
        description: The Inbox ID
      body:
        type: json
        data: '{}'
    docs: 'Create a channel in an inbox.


      Required scope: `channels:write`'
  - info:
      name: List teammate channels
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/teammates/:teammate_id/channels
      params:
      - name: teammate_id
        value: ''
        type: path
        description: The teammate ID. Alternatively, you can supply an email as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'List the channels of a teammate.


      Required scope: `channels:read`'
  - info:
      name: List team channels
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/teams/:team_id/channels
      params:
      - name: team_id
        value: ''
        type: path
        description: The team ID
    docs: 'List the channels of a team (workspace).


      Required scope: `channels:read`'
- info:
    name: Drafts
    type: folder
  items:
  - info:
      name: Create draft
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/channels/:channel_id/drafts
      params:
      - name: channel_id
        value: ''
        type: path
        description: The channel ID. Alternatively, you can supply the channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Create a draft message which is the first message of a new [conversation](https://dev.frontapp.com/reference/conversations).


      Required scope: `drafts:write`'
  - info:
      name: List conversation drafts
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/conversations/:conversation_id/drafts
      params:
      - name: conversation_id
        value: ''
        type: path
        description: The conversation ID
    docs: 'List the drafts in a conversation.


      Required scope: `drafts:read`'
  - info:
      name: Create draft reply
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/conversations/:conversation_id/drafts
      params:
      - name: conversation_id
        value: ''
        type: path
        description: The conversation ID
      body:
        type: json
        data: '{}'
    docs: 'Create a new draft as a reply to the last message in the conversation.


      Required scope: `drafts:write`'
  - info:
      name: Delete draft
      type: http
    http:
      method: DELETE
      url: https://api2.frontapp.com/drafts/:draft_id
      params:
      - name: draft_id
        value: ''
        type: path
        description: The draft ID
      body:
        type: json
        data: '{}'
    docs: 'Delete a draft message.


      Required scope: `drafts:delete`'
  - info:
      name: Edit draft
      type: http
    http:
      method: PATCH
      url: https://api2.frontapp.com/drafts/:message_id/
      params:
      - name: message_id
        value: ''
        type: path
        description: The draft ID
      body:
        type: json
        data: '{}'
    docs: 'Edit a draft message.


      Required scope: `drafts:write`'
- info:
    name: Messages
    type: folder
  items:
  - info:
      name: Receive custom messages
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/channels/:channel_id/incoming_messages
      params:
      - name: channel_id
        value: ''
        type: path
        description: The channel ID. Alternatively, you can supply the channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Receive a custom message in Front. This endpoint is available for custom channels **ONLY**.


      Required scope: `messages:write`'
  - info:
      name: Create message
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/channels/:channel_id/messages
      params:
      - name: channel_id
        value: ''
        type: path
        description: The sending channel ID. Alternatively, you can supply the sending channel address as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
      body:
        type: json
        data: '{}'
    docs: 'Send a new message from a channel. This is one of the ways to create a new [conversation](https://dev.frontapp.com/reference/conversations#creating-a-new-conversation).
      The new conversation will support both messages and comments (discussions).


      Required scope: `messages:send`'
  - info:
      name: Create message reply
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/conversations/:conversation_id/messages
      params:
      - name: conversation_id
        value: ''
        type: path
        description: The conversation ID
      body:
        type: json
        data: '{}'
    docs: 'Reply to a conversation by sending a message and appending it to the conversation.


      Required scope: `messages:send`'
  - info:
      name: Import message
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/inboxes/:inbox_id/imported_messages
      params:
      - name: inbox_id
        value: ''
        type: path
        description: The Inbox ID
      body:
        type: json
        data: '{}'
    docs: Use this endpoint to import conversations into Front without sending data through a channel. Typical use cases include
      importing historical conversations or creating new conversations from non-standard sources, such as web form submissions
      that can't use the default Form channel (for example, forms that don't have static URLs or form providers that send
      email notifications after submission). Avoid using this endpoint for conversations that can be handled by a dedicated
      Front channel—instead, use
  - info:
      name: Get message
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/messages/:message_id
      params:
      - name: message_id
        value: ''
        type: path
        description: The message ID
    docs: 'Fetch a message.


      > ℹ️ The HTTP Header `Accept` can be used to request the message in a different format.

      > By default, Front will return the documented JSON response. By requesting `message/rfc822`, the response will contain
      the message in the EML format (for email messages only).



      Required scope: `messages:read`'
  - info:
      name: Get message seen status
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/messages/:message_id/seen
      params:
      - name: message_id
        value: ''
        type: path
        description: The message ID
    docs: 'Get the seen receipts for the given message. If no seen-by information is available, there will be a single entry
      for the first time the message was seen by any recipient. If seen-by information is available, there will be an entry
      for each recipient who has seen the message.


      Required scope: `messages:read`'
  - info:
      name: Mark message seen
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/messages/:message_id/seen
      params:
      - name: message_id
        value: ''
        type: path
        description: The message ID
      body:
        type: json
        data: '{}'
    docs: 'Mark an outbound message from Front as seen. Note, the message seen route should only be called in response to
      an actual end-user''s message-seen action. In accordance with this behavior, the route is rate limited to 10 requests
      per message per hour.


      Required scope: `messages:write`'
- info:
    name: Comments
    type: folder
  items:
  - info:
      name: Get comment
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/comments/:comment_id
      params:
      - name: comment_id
        value: ''
        type: path
        description: The Comment ID
    docs: 'Fetches a comment.


      Required scope: `comments:read`'
  - info:
      name: Update comment
      type: http
    http:
      method: PATCH
      url: https://api2.frontapp.com/comments/:comment_id/
      params:
      - name: comment_id
        value: ''
        type: path
        description: The Comment ID
      body:
        type: json
        data: '{}'
    docs: 'Update a comment in a [conversation](https://dev.frontapp.com/reference/conversations).


      Required scope: `comments:write`'
  - info:
      name: List comment mentions
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/comments/:comment_id/mentions
      params:
      - name: comment_id
        value: ''
        type: path
        description: The Comment ID
    docs: 'List the teammates mentioned in a comment.


      Required scope: `teammates:read`'
  - info:
      name: Add comment reply
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/comments/:comment_id/replies
      params:
      - name: comment_id
        value: ''
        type: path
        description: The comment ID to reply to
      body:
        type: json
        data: '{}'
    docs: 'Add a reply to a comment on a [conversation](https://dev.frontapp.com/reference/conversations). Comment replies
      visually indicate which comment is being responded to, helping users follow the conversation.


      Required scope: `comments:write`'
  - info:
      name: List conversation comments
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/conversations/:conversation_id/comments
      params:
      - name: conversation_id
        value: ''
        type: path
        description: The conversation ID
    docs: 'List the comments in a conversation in reverse chronological order (newest first).


      Required scope: `comments:read`'
  - info:
      name: Add comment
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/conversations/:conversation_id/comments
      params:
      - name: conversation_id
        value: ''
        type: path
        description: The conversation ID
      body:
        type: json
        data: '{}'
    docs: 'Add a comment to a [conversation](https://dev.frontapp.com/reference/conversations). If you want to create a new
      comment-only conversation, use the [Create discussion conversation](https://dev.frontapp.com/reference/create-conversation)
      endpoint.


      Required scope: `comments:write`'
- info:
    name: Attachments
    type: folder
  items:
  - info:
      name: Download attachment for a comment
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/comments/:comment_id/download/:attachment_link_id
      params:
      - name: comment_id
        value: ''
        type: path
        description: The Comment ID
      - name: attachment_link_id
        value: ''
        type: path
        description: The Attachment ID
    docs: 'Download an attachment file for a given comment ID


      Required scope: `attachments:read`'
  - info:
      name: Download attachment
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/download/:attachment_link_id
      params:
      - name: attachment_link_id
        value: ''
        type: path
        description: The Attachment ID
    docs: 'Download an attachment file.


      Required scope: `attachments:read`'
  - info:
      name: Download attachment for a message template
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/message_templates/:message_template_id/download/:attachment_link_id
      params:
      - name: message_template_id
        value: ''
        type: path
        description: The Message Template ID
      - name: attachment_link_id
        value: ''
        type: path
        description: The Attachment ID
    docs: 'Download an attachment file for a given message template ID


      Required scope: `attachments:read`'
  - info:
      name: Download attachment for a message
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/messages/:message_id/download/:attachment_link_id
      params:
      - name: message_id
        value: ''
        type: path
        description: The Message ID
      - name: attachment_link_id
        value: ''
        type: path
        description: The Attachment ID
    docs: 'Download an attachment file for a given message id. Should be used by partner channels.


      Required scope: `attachments:read`'
- info:
    name: Rules
    type: folder
  items:
  - info:
      name: List all company rules
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/company/rules
    docs: 'List the company rules.


      Required scope: `rules:read`'
  - info:
      name: List rules
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/rules
    docs: 'List the rules of the company.


      Required scope: `rules:read`'
  - info:
      name: Get rule
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/rules/:rule_id
      params:
      - name: rule_id
        value: ''
        type: path
        description: The Rule ID
    docs: 'Fetch a rule.


      Required scope: `rules:read`'
  - info:
      name: List teammate rules
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/teammates/:teammate_id/rules
      params:
      - name: teammate_id
        value: ''
        type: path
        description: The teammate ID. Alternatively, you can supply an email as a [resource alias](https://dev.frontapp.com/docs/resource-aliases-1).
    docs: 'List the rules of a teammate.


      Required scope: `rules:read`'
  - info:
      name: List team rules
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/teams/:team_id/rules
      params:
      - name: team_id
        value: ''
        type: path
        description: The team ID
    docs: 'List the rules of a team (workspace).


      Required scope: `rules:read`'
- info:
    name: Statuses
    type: folder
  items:
  - info:
      name: List company ticket statuses
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/company/statuses
    docs: 'List the ticket statuses available for your company.


      Required scope: `statuses:read`'
  - info:
      name: Get ticket status
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/company/statuses/:status_id
      params:
      - name: status_id
        value: ''
        type: path
        description: The ticket status ID
    docs: 'Fetch a ticket status.


      Required scope: `statuses:read`'
- info:
    name: Tags
    type: folder
  items:
  - info:
      name: List company tags
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/company/tags
      params:
      - name: limit
        value: ''
        type: query
        description: Max number of results per [page](https://dev.frontapp.com/docs/pagination)
      - name: page_token
        value: ''
        type: query
        description: Token to use to request the [next page](https://dev.frontapp.com/docs/pagination)
      - name: sort_by
        value: ''
        type: query
        description: Field used to sort the tags. Only supports `id`.
      - name: sort_order
        value: ''
        type: query
        description: Order by which results should be sorted
    docs: 'List the company tags.


      Required scope: `tags:read`'
  - info:
      name: Create company tag
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/company/tags
      body:
        type: json
        data: '{}'
    docs: 'Create a company tag.


      Required scope: `tags:write`'
  - info:
      name: List tags
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/tags
      params:
      - name: limit
        value: ''
        type: query
        description: Max number of results per [page](https://dev.frontapp.com/docs/pagination)
      - name: page_token
        value: ''
        type: query
        description: Token to use to request the [next page](https://dev.frontapp.com/docs/pagination)
      - name: sort_by
        value: ''
        type: query
        description: Field used to sort the tags. Only supports `id`.
      - name: sort_order
        value: ''
        type: query
        description: Order by which results should be sorted
    docs: 'List all the tags of the company that the API token has access to, whether they be company tags, team tags, or
      teammate tags.


      Required scope: `tags:read`'
  - info:
      name: Create tag
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/tags
      body:
        type: json
        data: '{}'
    docs: 'Create a tag in the oldest team (workspace). This is a legacy endpoint. Use the Create company tag, Create team
      tag, or Create teammate tag endpoints instead.


      Required scope: `tags:write`'
  - info:
      name: Get tag
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/tags/:tag_id
      params:
      - name: tag_id
        value: ''
        type: path
        description: The tag ID
    docs: 'Fetch a tag.


      Required scope: `tags:read`'
  - info:
      name: Update a tag
      type: http
    http:
      method: PATCH
      url: https://api2.frontapp.com/tags/:tag_id
      params:
      - name: tag_id
        value: ''
        type: path
        description: The tag ID
      body:
        type: json
        data: '{}'
    docs: 'Update a tag.


      Required scope: `tags:write`'
  - info:
      name: Delete tag
      type: http
    http:
      method: DELETE
      url: https://api2.frontapp.com/tags/:tag_id
      params:
      - name: tag_id
        value: ''
        type: path
        description: The ID of the tag to delete
    docs: 'Delete a tag.


      Required scope: `tags:delete`'
  - info:
      name: List tag children
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/tags/:tag_id/children
      params:
      - name: tag_id
        value: ''
        type: path
        description: The tag ID
    docs: 'List the children of a specific tag.


      Required scope: `tags:read`'
  - info:
      name: Create child tag
      type: http
    http:
      method: POST
      url: https://api2.frontapp.com/tags/:tag_id/children
      params:
      - name: tag_id
        value: ''
        type: path
        description: The tag ID
      body:
        type: json
        data: '{}'
    docs: 'Creates a child tag.


      Required scope: `tags:write`'
  - info:
      name: List tagged conversations
      type: http
    http:
      method: GET
      url: https://api2.frontapp.com/tags/:tag_id/conversations
      params:
      - name: tag_id
        value: ''
        type: path
        description: The ID of the tag
      - name: q
        value: ''
        type: query
        description: '[Search query object](https://dev.frontapp.com/docs/query-object-q) with a property `statuses`, whose
          value should be a list of conversation statuses (`assigned`, `unassigned`, `archived`, or `trashed`). If ticketing
          is enabled, this endpoint accepts either `status_categories` (`open`, `waiting`, `resolved`) or `status_ids` as
          an alternative.'
      - name: limit
        value: ''
        type: query
        description: Max number of results per [page](https://dev.frontapp.com/docs/pagination)
      - name: page_token
        value: ''
        type: query
        description: Token to use to request the [next page](https://dev.frontapp.com/docs/pagination)
    docs: 'List the conversations tagged with a tag. For more advanced filtering, see the [search endpoint](https://dev.frontapp.com/reference/conversations#search-conversations).



      Required scope: `conversations:read`'
  - info:
      name: List teammate tags
      type: http
    http:


# --- truncated at 32 KB (129 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/front/refs/heads/main/apis.yml