InTouch Hub · Blue Isle Software

HappyFox

Create and update support tickets and contacts in HappyFox via the HappyFox REST API v1.1.

HappyFox

Create and update support tickets and contacts in HappyFox via the HappyFox REST API v1.1.

What it does

Provides eight operations against the HappyFox helpdesk:

Operation Description
list_tickets Retrieve the first page of tickets (up to 10, default page size)
get_ticket Fetch full details for a single ticket by ticket number
create_ticket Open a new ticket for a contact (creates the contact if new)
update_ticket Post a staff reply or change status/priority on an existing ticket
list_contacts Retrieve the first page of contacts
get_contact Fetch a single contact by numeric ID or email address
create_contact Create a new contact with name, email, and optional phone
update_contact Update name, email, or phone on an existing contact

API key setup

  1. Log in to HappyFox as an admin.
  2. Go to Apps > Goodies > API.
  3. Click New API Key, give it a name, and save.
  4. Copy both the API Key and the Auth Code that appear — you need both.

Authentication

HappyFox uses HTTP Basic authentication. The API key is the username and the auth code is the password. The tool encodes them automatically; you supply them as plain strings.

Base URL

https://{subdomain}.happyfox.com/api/1.1/json/

EU-hosted accounts use .happyfox.net — supply the full host as the subdomain input and the tool normalizes it.

Inputs

Input Required Description
apiKey Yes HappyFox API key
authCode Yes HappyFox auth code
subdomain Yes Your HappyFox subdomain (e.g. acme from acme.happyfox.com)
operation Yes One of the eight operations listed above
ticketNumber For ticket ops Ticket number (e.g. 42)
subject create_ticket Ticket subject line
text create/update_ticket Message body (plain text; stored as HTML by HappyFox)
email create_ticket, create/update_contact Contact email address
name create_ticket, create/update_contact Contact display name
categoryId create_ticket Category ID (integer; required by HappyFox)
priorityId create/update_ticket Priority ID (integer)
staffId update_ticket Agent/staff ID performing the update
statusId update_ticket New status ID
contactId get/update_contact Numeric contact ID or email address
phone create/update_contact Contact phone number

Examples

Create a ticket

- name: open_ticket
  tool: happyfox
  input:
    apiKey: "{{credential.happyfox_api_key}}"
    authCode: "{{credential.happyfox_auth_code}}"
    subdomain: acme
    operation: create_ticket
    name: Jane Smith
    email: [email protected]
    subject: Cannot log in to my account
    text: I've been locked out since this morning. Please help.
    categoryId: "3"

Get ticket details

- name: fetch_ticket
  tool: happyfox
  input:
    apiKey: "{{credential.happyfox_api_key}}"
    authCode: "{{credential.happyfox_auth_code}}"
    subdomain: acme
    operation: get_ticket
    ticketNumber: "42"

Update a ticket (staff reply + status change)

- name: reply_ticket
  tool: happyfox
  input:
    apiKey: "{{credential.happyfox_api_key}}"
    authCode: "{{credential.happyfox_auth_code}}"
    subdomain: acme
    operation: update_ticket
    ticketNumber: "42"
    staffId: "7"
    text: We've reset your password. Please try logging in again.
    statusId: "2"

Create a contact

- name: add_contact
  tool: happyfox
  input:
    apiKey: "{{credential.happyfox_api_key}}"
    authCode: "{{credential.happyfox_auth_code}}"
    subdomain: acme
    operation: create_contact
    name: Jane Smith
    email: [email protected]
    phone: "+15550001234"

Notes