Freshdesk Freddy AI

Gate Freddy AI actions — refunds, ticket escalations, account changes — behind a human approval step before they execute. No SDK required.

Prerequisites

  • Freshdesk Suite account with Freddy AI or Freddy Copilot enabled.
  • Admin access to Freshdesk Automation settings.
  • Cheqpoint Connection Key.

Steps

  1. In Freshdesk, go to Admin → Automation → Ticket Automations and create or edit the automation that precedes a Freddy-initiated action.
  2. Add a Trigger Webhook action pointing to https://cheqpoint.co/api/webhooks/inbound.
  3. Set the x-api-key header with your Cheqpoint Connection Key and configure the JSON body.
  4. Map ticket variables (ticket ID, requester, subject) to the Cheqpoint request schema.
  5. Add a conditional check in the automation: if the webhook response status is approved, proceed with the Freddy action.
  6. If rejected, have Freddy inform the customer that the action requires manual review by a support agent.

Sample request payload

json
{
  "action": "issue_full_refund",
  "summary": "Freddy AI requesting a full refund for ticket #88421",
  "details": {
    "ticket_id": "88421",
    "order_id": "ORD-55129",
    "refund_amount_cents": 7900,
    "customer_email": "customer@example.com"
  },
  "justification": "Customer reported product arrived defective. SLA breach risk if not resolved today."
}

Sample Cheqpoint response

json
{
  "status": "approved",
  "modifiedDetails": null,
  "decisionNote": "Refund approved. Apply store credit instead of cash refund per policy."
}

Async behaviour

json
// If Cheqpoint returns status "pending", the approval is queued
// for a human reviewer. Branch on all three outcomes in your Freddy flow:
//
//   status == "approved"  → proceed with the Freddy action
//   status == "rejected"  → tell the customer it needs manual review
//   status == "pending"   → either:
//     a) poll GET /api/approvals/{approvalId} in a later step, or
//     b) pass callbackUrl so Cheqpoint POSTs the decision to a
//        webhook that can resume your Freshdesk Automation.

{
  "action": "issue_full_refund",
  "summary": "Freddy AI requesting a full refund for ticket #88421",
  "details": { "ticket_id": "88421", "order_id": "ORD-55129", "refund_amount_cents": 7900 },
  "callbackUrl": "https://your-backend.example.com/cheqpoint/callback"
}

Notes

You have full control over what data is passed into the details object to provide human reviewers with sufficient context.

Tips

Start by routing only high-risk or high-value actions to minimize friction while maintaining oversight.

Get your Connection Key at cheqpoint.co/signup.