front

type: meya.front.integration
class: FrontIntegration
path: /meya/front/integration/integration.py
signature: -

API token

https://app.frontapp.com/settings/tools/api

  • Create a new Front token
  • Save as this integration's API token

Bot teammate

https://app.frontapp.com/settings/global/teammates/list

  • Find or create a teammate
  • This integration will use the teammate for all bot conversations
  • Save the email address as this integration's bot teammate email

Channel

https://app.frontapp.com/settings/home

  • Find or create an inbox
  • Add a new custom channel
    • Enter a descriptive name
  • Under "API endpoints", add an outgoing URL
    • Use this integration's webhook URL
  • Under "API endpoints", find "cha_xxx" in the incoming URL
    • Save as this integration's channel ID

Webhook

https://app.frontapp.com/settings/integrations/native/edit/webhooks/settings

  • Enable the webhook integration
  • Turn on send full event details

Rule

https://app.frontapp.com/settings/home

  • Add a new rule
    • Enter a descriptive name
    • Make sure rule is active
  • Add 8 "When..." triggers
    • Inbound message is received
    • Outbound message is sent (new conversation)
    • Outbound reply is sent (existing conversation)
    • New comment is added from any teammate (no body condition)
    • Assignee is changed to any teammate
    • Assignee is removed
    • Any tag is added
    • Any tag is removed
  • [Optional] Add "If..." condition
    • Conversation is in your desired Inbox
  • Add 1 "Then..." action
    • "Send to a Webhook": Paste this integration's webhook URL

Meya Partner Channel

To use the Meya Partner Channel you'll need to generate a new token for
Front, and set it as the Front integration client_token.

  • Create a new client token using your app ID, integration ID, and a client
    secret that you generate using a password generator
    • Token format: {{app_id}}:{{integration_id}}:{{client_secret}},
      e.g. app-123:integration.front:xyz789
    • client_secret must be alphanumeric with length 10 to 20 characters
  • Now go to your Front inbox settings, and add the Meya Partner Channel
    using this client token

Fields

field

signature

required

type

default

description               

spec

ForwardRef('Spec')

null

Override the original spec for this element

enabled

bool

true

Enables the integration, allowing it to process events and HTTP entries

filter

IntegrationFilter

rx_sub: true
rx: true
tx: "\nmeya.event.entry.interactive\nOR meya.csp.event\nOR meya.button.event.click\n
OR meya.form.event.submit\n"
tx_pub: true

verify_token

str

null

max_attachment_size

int

15728640

Controls maximum attachment size supported by the integration in bytes.

markdown

list
bool

false

typing

bool

true

When set to 'False', all typing indicators received by the integration will be ignored.

avatar

CspIntegrationAvatar

crop: circle

agent_command_prefix

str

"/"

transcript

CspIntegrationTranscript

count: 25
user_prefix: user
bot_prefix: bot
agent_prefix: agent
note_prefix: 📝

agent

AgentSpec

name:
avatar:

api_token

str

bot_teammate_email

str

channel_id

str

integration_mode

FrontIntegrationMode

"tracking"

unlink_thread_status

list

[]

The set of Front statuses that will unlink the Meya thread from the Front conversation. When the Meya thread is unlinked, then the integration will no longer send events to Front.

unassign_mode

str

"bot"

client_token

str

null

request_attempts

int

4

Controls the number of attempts of each API request on the conversation create component.

request_timeout

Real

3

Controls Front API request timeout.

Examples

Basic

type: meya.front.integration
api_token: STRING
bot_teammate_email: STRING
channel_id: STRING

Full

type: meya.front.integration
spec: '?'
enabled: false
filter:
  rx_sub: STRING
  rx: STRING
  tx: STRING
  tx_pub: STRING
verify_token: STRING
max_attachment_size: 123
markdown:
  - format|linkify|breaks|typographer
typing: false
avatar:
  crop: circle|square
agent_command_prefix: STRING
transcript:
  count: 123
  user_prefix: STRING
  bot_prefix: STRING
  agent_prefix: STRING
  note_prefix: STRING
agent:
  name: full|first|first_initial|first_last_initial|first_initial_last_initial
  avatar:
    image: STRING
    crop: circle|square
    monogram: full|first|first_initial|first_last_initial|first_initial_last_initial
api_token: STRING
bot_teammate_email: STRING
channel_id: STRING
integration_mode: tracking|ticketing
unlink_thread_status:
  - trash
unassign_mode: STRING
client_token: STRING
request_attempts: 123
request_timeout: 123