# Best CrewAI Approach for Building a Ticketing Chatbot with API Workflows

**URL:** <https://community.crewai.com/t/best-crewai-approach-for-building-a-ticketing-chatbot-with-api-workflows/4561>\
**Category:** CrewAI Community Support\
**Tags:** crewai\
**Created:** [March 10, 2025, 1:52pm UTC](https://community.crewai.com/t/best-crewai-approach-for-building-a-ticketing-chatbot-with-api-workflows/4561 "2025-03-10T13:52:20Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Shreyas\_Bs](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/shreyas_bs/32/1649_2.png) [@Shreyas\_Bs](https://community.crewai.com/u/Shreyas_Bs)\
**Post date:** [March 10, 2025, 1:52pm UTC](https://community.crewai.com/t/best-crewai-approach-for-building-a-ticketing-chatbot-with-api-workflows/4561/1 "2025-03-10T13:52:20Z")

</div>

I want to build an AI chatbot using **CrewAI** to handle ticketing tasks via API interactions:

1. **Update Ticket**
2. **Create a New Ticket**
3. **Close Ticket**
4. **Fetch Ticket Details**

### **Workflow:**

1. Receive user question
2. **Classify user intent and route to the correct CrewAI Flow**
3. Generate API request using user query, API schema, and few-shot examples
4. Trigger API request and fetch response
5. Generate a response for the user

Since tasks are workflow-oriented and interdependent, I plan to use **CrewAI Flows** for structured execution. Additionally, memory, state management, and caching are crucial for seamless conversation handling.

### **Key Considerations:**

- Implement **custom tools & functions** for API interactions
- Maintain **chatbot memory & state** for continuity
- Ensure robust **error handling & logging**

What is the best CrewAI implementation strategy for achieving this? Any best practices or guidelines would be appreciated!

---

<div class="post-metadata">

**Author:** ![Aditya\_Bhat](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/aditya_bhat/32/2552_2.png) [@Aditya\_Bhat](https://community.crewai.com/u/Aditya_Bhat)\
**Post date:** [October 26, 2025, 3:15pm UTC](https://community.crewai.com/t/best-crewai-approach-for-building-a-ticketing-chatbot-with-api-workflows/4561/2 "2025-10-26T15:15:08Z")

</div>

Hi. Any answer?

I have been working on a similar chatbot which connects to the Atlassian MCP Server to raise/update IT Tickets. I’ve been stuck at a dead end.

What I am trying to do it I want an ITSM chatbot that converses naturally with the user until it gathers all the information about the issue that the user is facing. For this, I am trynig to include the human in the loop.I’ve defined a manager agent and a hierarchical process to do this which delegates to the other downsteam agents until it raises an issue with JIRA. I am getting a lot of errors where the manager agent is unable to delegate tasks to subsequent agents even though I have allowed delegation= True.

Also, the supervisor agent is asking for approval everytime it passes onto the downstram agent. This is not how it is supposed to work.
