SuiteCRM automation · runs daily

Answer open SuiteCRM cases with AI

A customer replies to a case overnight, the reply sits in the Case Updates thread, and nobody sees it until the agent assigned to the case opens it.

Cotlet does it in your own SuiteCRM account with list_records, list_case_updates and add_case_update, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can SuiteCRM do this on its own?

SuiteCRM notifies the assigned user of case activity by its own settings and can create cases from inbound email, but nothing reads a thread and answers it (checked 23 Oct 2026). Its v8 API documents generic module calls only, not the Case Updates thread.

How you do it in SuiteCRM today

  1. In Cases, switch on My Items and filter by State Open to see your cases.
  2. Open each case and read its Case Updates tab, a chronological threaded log of updates from users and responses from contacts.
  3. Type the answer in the Update field and click Save; SuiteCRM emails all Contacts related to the case.
  4. For a private note, check Internal Update first: it stays in the thread and is not emailed or shown on the customer portal.
  5. Statuses such as New, Assigned and Pending Input are changed by hand, and a quiet case is easy to miss in a long list.

How to answer open SuiteCRM cases with AI

Prompt

List open SuiteCRM cases assigned to me where the last update came from the customer. Draft a reply to each, and post the ones that only need a status answer. Keep the rest for me.
  1. 01

    List the open cases

    list_records runs on Cases with assigned_to_me and status filters for New, Assigned or Pending Input. It follows next_cursor so a long list is read completely.

  2. 02

    Read each thread

    list_case_updates returns the Case Updates thread in order, with author, text and an internal flag. A case whose last update is from a user on your team is skipped, because the customer is not waiting.

  3. 03

    Decide what needs you

    Refunds, complaints and anything not answered by the Resolution field of earlier cases or your own notes are listed for you instead of answered.

  4. 04

    Post the update

    add_case_update posts the reply to the thread. With internal set to false, SuiteCRM emails every related Contact, so each call waits for your OK by default. Notes for your team go in with internal set to true.

  5. 05

    Report the state

    The reply lists each case with what was posted, so you can open the ones you still own.

What you get back

Example data

Open cases assigned to you: 9
Customer wrote last: 4
Replied to 2 (Case 1042: reset steps sent, Case 1045: invoice copy sent)
Internal note added to 1
Left for you 1: refund request

Other ways to ask

  • Every morning, list cases where the customer replied overnight and add an internal summary to each, posting nothing to customers.
  • Find open cases with no update for a week and post a check-in to the customer.
  • Draft replies for my P1 cases in this chat and post nothing.

What SuiteCRM allows, and what to know first

  • SuiteCRM cases have a State of Open or Closed, and a Status such as New, Assigned or Pending Input while open.
  • Case Priority is P1 (Urgent), P2 (High) or P3 (Medium).
  • SuiteCRM saves every case update in the thread and emails all Contacts related to the case, unless Internal Update is checked.
  • Internal updates are not visible on the customer portal, if one is set up.
  • The Resolution field of a closed case builds a knowledge base of solutions that later cases can reuse.

add_case_update asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.

Sources: SuiteCRM 8 Guide: Cases · SuiteCRM 8 Guide: Searching · SuiteCRM Docs: API v8 endpoints

Call add_case_update from a script

curl

curl -X POST https://cotlet.dev/api/v1/suitecrm/cases/2b7e9c14-5a30-d8f6-41e2-9c0a7b3d5e18/update \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hi Maria, to reset the device hold the side button for 10 seconds, then try the app again. Tell us if it still fails.","internal":false}'

Example response

{
  "update_id": "c58e0b3a-4f17-4d92-8a6e-3b1d7f9c2e40",
  "case_id": "2b7e9c14-5a30-d8f6-41e2-9c0a7b3d5e18",
  "internal": false,
  "emailed_contacts": 1,
  "created_at": "2026-10-23T09:20:00"
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is suitecrm_write → add_case_update. Example data.

Schedule it in n8n, Make, Zapier or cron

SuiteCRM tools this automation uses

Cotlet SuiteCRM tools used to answer open SuiteCRM cases with AI
Tool Parameters
list_records module, query, status, assigned_to_me, modified_since, cursor
list_case_updates case_id, cursor
add_case_update case_id, text, internal
All 12 SuiteCRM tools with descriptions

Frequently asked questions

Is it safe to connect SuiteCRM to Cotlet?

Yes. You sign in to SuiteCRM yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get SuiteCRM once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

Give your agent access to SuiteCRM.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with SuiteCRM.