Forms work well for most people. But some residents would rather type one sentence: "There's a huge pothole on Shields near the bus stop." Others just want to know what happened to the report they filed last week.
The Sentra 311 chat handles both. It sits on the city's report page as a "Chat with us" button, and it uses the same rules, forms and routing as everything else in the system.
What residents can do in the chat
Report a problem. The resident describes it in their own words. The chat suggests a request type, asks where it is, asks the city's questions for that type, and offers to attach a photo. Then it shows a summary card: type, location, answers, contact. The request is only filed when the resident presses Send on that card.
Check a request. The resident gives the request number and either the email on file or the tracking code from their confirmation. The chat shows the same public status the tracking page shows, with the progress bar.
Ask a question. If the city has a knowledge base article that answers it, the chat offers it before filing anything.
The rules it follows
We built the chat to be useful, not chatty. A few rules are fixed in the system, not left to the AI:
- It never files without a yes. The final step is a button the resident presses. If they edit anything after the summary, a new summary is shown.
- It only knows city services. It answers questions about reporting problems and the city's published answers. It won't make up policies.
- It doesn't reveal other people's requests. Status lookups need the number plus the email on file or the tracking code. Requests in restricted departments aren't shown at all.
- Emergencies come first. If a message suggests danger, the chat tells the resident to call 911 before anything else.
- What residents type can't change its permissions. A message that says "ignore your instructions" gets the same answer as any other message.
Under the hood
The chat uses Claude, an AI model from Anthropic, to understand what residents write and decide which step comes next. The steps themselves, like suggesting a type, checking the location against city limits or creating the request, are done by Sentra 311's own code, with the same checks as the report page.
If AI is turned off, or a city prefers not to use it, the chat runs as a guided flow with buttons: "Report a problem" or "Check a request." It covers the same steps without free-text understanding.
What staff see
Requests filed through the chat show "Chat" as the channel. The conversation is attached to the request's internal timeline, so staff can read exactly what the resident wrote. Conversations are deleted after 90 days by default; the filed request keeps its copy.
Languages
The chat answers in the language the resident writes in. Request forms are in English and Spanish today.
What it costs
AI is included in Sentra 311's plans. There is no per-conversation charge to the city. We're able to do that because a typical report conversation uses a small amount of AI processing, and we cache the parts that are the same for every conversation.
Some cities buy chat as a separate product on top of their 311 system. In Sentra 311 it's part of every plan.
An example conversation
A resident types: "There's a big pothole on Shields near the bus stop, my tire almost blew."
The chat suggests the Pothole type and asks the resident to confirm the spot. The resident shares their location. The chat checks it's inside city limits and asks the city's questions for potholes, such as whether it's in a traffic lane. It offers to attach a photo, then shows the summary card. The resident presses Send and gets a request number and tracking link.
Because the resident mentioned their tire, the chat can also point to the city's knowledge base article on filing a damage claim, if the city has one.
Where it's going
The chat is live on the city report page and the tracking page. Adding it to the website widget and the resident app is on our roadmap, along with a voice option.