Access the Front API with managed OAuth authentication. Manage conversations, messages, contacts, tags, inboxes, teammates, and teams.
Reference
Get Current Company
GET /front/meResponse:
{
"_links": {"self": "https://company.api.frontapp.com/me"},
"name": "Company Name",
"id": "cmp_12345"
}List Teammates
GET /front/teammatesResponse:
{
"_pagination": {"next": null},
"_results": [
{
"id": "tea_pa3u0",
"email": "user@example.com",
"username": "username",
"first_name": "John",
"last_name": "Doe",
"is_admin": true,
"is_available": true,
"is_blocked": false,
"type": "user"
}
]
}Get Teammate
GET /front/teammates/{teammate_id}List Teams
GET /front/teamsResponse:
{
"_pagination": {"next": null},
"_results": [
{
"id": "tim_9p8dk",
"name": "Customer Support"
},
{
"id": "tim_9p8fc",
"name": "Sales"
}
]
}List Inboxes
GET /front/inboxesResponse:
{
"_pagination": {"next": null},
"_results": [
{
"id": "inb_lzrag",
"name": "Support",
"is_private": false,
"is_public": true,
"address": "support@company.com",
"send_as": "support@company.com",
"type": "smtp"
}
]
}Get Inbox
GET /front/inboxes/{inbox_id}Create Inbox
POST /front/inboxes
Content-Type: application/json
{
"name": "New Inbox",
"teammate_ids": ["tea_abc123"]
}List Channels
GET /front/channelsResponse:
{
"_pagination": {"next": null},
"_results": [
{
"id": "cha_ogobs",
"name": "support@company.com",
"address": "support@company.com",
"send_as": "support@company.com",
"type": "smtp",
"is_private": false,
"is_valid": true
}
]
}Get Channel
GET /front/channels/{channel_id}List Conversations
GET /front/conversationsQuery Parameters:
q- Search querypage_token- Pagination token
Response:
{
"_pagination": {"next": null},
"_results": [
{
"id": "cnv_abc123",
"subject": "Help with order",
"status": "open",
"assignee": {
"id": "tea_pa3u0",
"email": "agent@company.com"
},
"recipient": {
"handle": "customer@example.com"
},
"last_message": {
"body": "Message content..."
},
"created_at": 1774828390.948
}
]
}Get Conversation
GET /front/conversations/{conversation_id}Update Conversation
PATCH /front/conversations/{conversation_id}
Content-Type: application/json
{
"assignee_id": "tea_abc123",
"inbox_id": "inb_xyz789",
"status": "archived",
"tag_ids": ["tag_123"]
}Update Conversation Assignee
PUT /front/conversations/{conversation_id}/assignee
Content-Type: application/json
{
"assignee_id": "tea_abc123"
}Get Message
GET /front/messages/{message_id}Response:
{
"id": "msg_abc123",
"type": "email",
"is_inbound": true,
"created_at": 1774828390.948,
"blurb": "Message preview...",
"body": "Full message content...",
"author": {
"id": "tea_pa3u0",
"email": "agent@company.com"
},
"recipients": [
{
"handle": "customer@example.com",
"role": "to"
}
]
}Send Reply
POST /front/conversations/{conversation_id}/messages
Content-Type: application/json
{
"author_id": "tea_abc123",
"body": "Thank you for reaching out!",
"type": "reply"
}Send New Message
POST /front/channels/{channel_id}/messages
Content-Type: application/json
{
"author_id": "tea_abc123",
"to": ["customer@example.com"],
"subject": "Following up",
"body": "Hi, just following up on your inquiry..."
}List Contacts
GET /front/contactsQuery Parameters:
q- Search query (email, name, phone)page_token- Pagination token
Response:
{
"_pagination": {"next": null},
"_results": [
{
"id": "crd_54wgwiw",
"name": "John Doe",
"description": "",
"handles": [
{"source": "email", "handle": "john@example.com"}
],
"groups": [],
"updated_at": 1774828390.948,
"is_private": false
}
]
}Get Contact
GET /front/contacts/{contact_id}Create Contact
POST /front/contacts
Content-Type: application/json
{
"name": "Jane Smith",
"handles": [
{"source": "email", "handle": "jane@example.com"}
],
"description": "VIP customer"
}Update Contact
PATCH /front/contacts/{contact_id}
Content-Type: application/json
{
"name": "Jane Smith-Jones",
"description": "Updated description"
}Delete Contact
DELETE /front/contacts/{contact_id}List Tags
GET /front/tagsResponse:
{
"_pagination": {"next": null},
"_results": [
{
"id": "tag_6v3mzs",
"name": "Urgent",
"highlight": "red",
"description": "High priority items",
"is_private": false,
"is_visible_in_conversation_lists": true
}
]
}Get Tag
GET /front/tags/{tag_id}Create Tag
POST /front/tags
Content-Type: application/json
{
"name": "Follow-up",
"highlight": "blue",
"description": "Needs follow-up"
}Update Tag
PATCH /front/tags/{tag_id}
Content-Type: application/json
{
"name": "Updated Tag Name",
"highlight": "green"
}Delete Tag
DELETE /front/tags/{tag_id}List Accounts
GET /front/accountsGet Account
GET /front/accounts/{account_id}Create Account
POST /front/accounts
Content-Type: application/json
{
"name": "Acme Corp",
"description": "Enterprise customer",
"domains": ["acme.com"]
}Update Account
PATCH /front/accounts/{account_id}
Content-Type: application/json
{
"name": "Acme Corporation",
"description": "Updated description"
}List Conversation Comments
GET /front/conversations/{conversation_id}/commentsCreate Comment
POST /front/conversations/{conversation_id}/comments
Content-Type: application/json
{
"author_id": "tea_abc123",
"body": "Internal note: Customer is a VIP"
}