"I'm Not Technical and Don't Know How to Set Up the API" 

6 Min Read

Zammo Logo

September 23, 2026

This one honest sentence explains more about where government AI is headed than any roadmap slide we could show you.

It's an admission most software punishes. Say it to a traditional platform and you get a documentation link, a ticket queue, or a meeting with IT. Say it here and the work just continues.

We'll get there. First, a blank screen and a blinking cursor is where the building begins.

There is no workflow canvas waiting to be wired, no intent tree, no spreadsheet of sample utterances to fill in before anything works. There is a prompt box and a single line of encouragement: Build something amazing. 

From blank screen to a named, tested agent. No canvas, no intent tree, no sample utterances.

What gets typed is one sentence. The kind of thing a city program manager might say out loud in a hallway, to a colleague, with no expectation that a machine is listening: 

"I want to create a resident support agent for a city. SF 311 RAG will be used to answer user questions and queries." 

Enter. 

Moments later, there is an agent. It has given itself a name, SF 311 Resident Support, and it has already tested itself. 

The Part Everyone Skips 

Most demos would cut here and cue the music. This one does something more interesting. It shows you the receipts. 

The agent grades itself before anyone else has to.

Six checks, six passes. Reporting common city issues. Questions about service requests. Requests to file or pay on a resident's behalf. Fees and eligibility. 

And then the line that matters most to anyone who has ever sat in a public meeting and watched a council member ask what happens when the system is wrong: 

Unsupported information without guessing. 

That is not a feature. That is a posture. An agent that will say "I don't know" is an agent a city can actually put in front of residents, because the failure mode is a dead end instead of a headline. Everything else on that list is convenience. That last line is trust. 

Then Comes the Sentence 

Ninety seconds in, the build takes a turn that is worth stopping on, because it is the whole argument in miniature. 

The next request is to connect ServiceNow, so that a resident reporting a problem creates a real incident and gets a real ticket number back. Standard enough. It is what the rest of the sentence says that stops you: 

"I'm not technical and don't know how to set up the API. This is all I have from the IT team." 

An honest admission, pasted credentials, and a request to figure out the rest.

Read that again, because it is the sentence almost nobody puts in a demo script. It is an admission of a gap. In most software, that gap is where the project stops and a ticket gets filed with IT, and three weeks disappear. 

Here, it is just input. 

Confirmation, confirmation before submission, real ticket numbers, and a clear line to 911 for emergencies.

Look closely at what came back. The agent will ask for a description and a location. It will read the report back and wait for confirmation before it submits anything. It creates the incident only after the resident agrees. It returns the real ticket number. And it routes immediate danger, injury, fire, or a crime in progress to 911 instead of trying to be helpful. 

Then it volunteers something most software would quietly bury: its own connection test created two sample incidents in the development instance, and it names them. That is a system telling on itself, and it is the kind of detail that makes an IT director exhale. 

"The hardest problem in this space was never the conversation. It was the distance between the person who understands how a city actually serves residents and the person who can write the integration. We spent our effort collapsing that distance, not adding another builder screen." 

Patrick Gilligan, Head of Product, Zammo.ai 

Teaching an Agent When to Step Aside 

The next instruction is one sentence again: detect frustration, and offer a live person. 

Escalation with consent, and a transcript that travels with the resident.

What comes back is more careful than what was asked for. The agent recognizes frustration or a direct request for help. It acknowledges the resident. It offers a connection. It connects them only after they agree. And it hands the responder the conversation transcript, so nobody has to start over. 

That last piece is small on screen and enormous in practice. The fastest way to lose a resident's patience is to make them repeat themselves to the human they were just escalated to. 

The platform records the whole behavior as a named policy, frustration-live-agent-escalation, which means it is reviewable later by someone who was not in the room when it was built. That is how this survives an audit. 

Proof Beats Promises 

Here the demo switches from building to showing, with a tester link that needs no install and no sign-in, and a real conversation begins. 

A resident asks how to get a residential parking permit. 

Answers with sources attached, plus the next three questions the resident was probably going to ask.

The answer walks through documentation, the online application, the in-person option at the SFMTA Customer Service Center with its hours, and the conditions that disqualify a vehicle. Underneath it sit the sources. Above the input box sit three suggested follow-ups, each one a question a real person actually asks next. 

Gina Joins the Chat 

Then the resident types the sentence every support system eventually hears: i want to speak to a live agent. 

Queue, accept, transcript, human. The responder never leaves Microsoft Teams.

The request queues. It lands in Microsoft Teams, where Gina is already working. She accepts, the transcript comes with it, and on the resident's side a quiet line appears: Gina joined the chat. 

"Hi. I'm Gina. I can help with your parking permit questions." 

No new console. No second inbox. No tab she has to remember to keep open. 

"I was in Teams, where I already spend my day. The chat came to me with the whole conversation attached, so I could pick up mid-thought instead of asking her to explain it all again. That is the difference between a handoff and a restart." 

Gina, Technical Specialist, Zammo.ai 

Same Agent, Different Language 

A moment later, a question arrives in Spanish about what belongs in the green waste cart. 

No second build, no separate deployment. The interface follows the resident.

The answer comes back in Spanish, detailed and specific. So does the interface. The input placeholder, the footer, all of it. 

Nobody built a Spanish agent. There is one agent, and it meets the resident where they are. 

One Pothole, End to End 

The demo closes by tying every thread together. 

A resident reports a pothole in the second lane on Highway 137, near the Broadway exit. The agent asks for the issue and location. It summarizes what it heard. It asks for confirmation. 

Report, read back, confirm, submit, ticket number.

Yes.

INC0010044, sitting in the live queue. The count goes from 110 to 111.

INC0010044. On the left side of the screen, the ServiceNow queue refreshes and there it is at the top of the list, in the same table as every other incident the city is working. The record count ticks from 110 to 111. 

One pothole. One resident. One ticket that a crew can actually be dispatched against. 

What Actually Changed 

The interesting thing about this recording is not that an AI built something. That story is everywhere now. 

The interesting thing is who was holding the keyboard. Someone who said plainly that they were not technical, who had nothing but what the IT team handed over, and who described what residents needed in the language they already use to describe it. The agent asked good questions, checked its own work, told the truth about what it had touched, and knew when to get a human. 

For years the constraint in government service delivery has not been ambition. Every city hall in America has a list of things residents deserve that never got built. The constraint was translation, the long and expensive trip from the person who knows what residents need to the person who can build it. 

That trip just got a great deal shorter. 

"The people who understand residents best have almost never been the people who could build for them. Watching that gap close, in one sitting, with no engineer in the room, is the most encouraging thing I have seen in this industry in a long time." 

Stacey Kyler, Managing Director, Zammo.ai 

You don't need to be technical. You don't need to know how to set up the API. You just need to know what your residents deserve. The blank screen is waiting: start building today at agents.zammo.ai.