What is polling?
An AI agent that answers customers has to know when a new message arrives. The obvious way is to keep looking: check the inbox, wait a bit, check again. That is called polling, and for messaging accounts it is one of the quieter ways to get into trouble. This guide explains what polling is, why platforms dislike it and what a well-set-up agent does instead.
In one sentence
Polling is when software keeps asking "is there anything new?" over and over, on a timer, instead of being told when something happens. For a business messaging account, constant checking looks like a bot to the platform, so a good AI agent waits to be told about new messages instead.
In more detail
Imagine a child on a long car journey asking "are we there yet?" every thirty seconds. They will find out when you arrive, but they have asked a hundred pointless questions on the way. Polling is the software version. Most of the time the answer is "no, nothing new", and every one of those questions still had to be asked and answered.
For a messaging account, each of those questions is a request to the platform: show me my chat list, show me the newest messages. A person opens their inbox a few dozen times a day. Software polling every few seconds opens it thousands of times. To WhatsApp, Instagram or LinkedIn, that pattern does not look like a business owner checking their phone. It looks like automation, and automation on personal and business accounts is exactly what platforms watch for.
Polling is also slower than it sounds. If an agent checks every five minutes, a customer who writes just after a check waits almost five minutes before the agent even notices. Check more often to be faster, and you put more pressure on the account. It is a trade-off with no good answer.
The better way is to be told. Instead of asking the platform again and again, the agent asks once and waits. When a new message lands, it hears about it straight away. Developers call each of these notices an event: a new message, a reaction, a comment or a change to an account. Waiting for events gives faster replies and puts no extra load on your account.
You will rarely see any of this yourself, but it is worth knowing about, because it is one of the things that separates a well-built set-up from a risky one. Here is the difference in practice. Names and details are examples.
An example
| Who | What happens |
|---|---|
| Polling agent, 09:00:00 | Asks the platform for the chat list. Nothing new. |
| Polling agent, 09:00:10 to 09:04:50 | Asks again every ten seconds. Thirty more requests, nothing new. |
| Customer (Ella), 09:05:03 | Hi, can I move my appointment to Friday? |
| Polling agent, 09:05:10 | Notices the message on its next check and replies. |
| Event-waiting agent, 09:00:00 | Asks Spaces to tell it about the next new message, then waits. |
| Event-waiting agent, 09:05:03 | Hears about Ella's message the moment it lands and replies, with nothing asked of the platform while it waited. |
Polling and waiting for events, side by side
| Polling | Waiting for events | |
|---|---|---|
| How it finds new messages | Keeps checking on a timer | Is told when something arrives |
| Requests to the platform | Many, mostly with nothing new | None while it waits |
| How it looks to the platform | Like a bot | Like normal account activity |
| How fast replies start | Up to one check interval late | Straight away |
| Risk to the account | Rises the more often it checks | Low |
Who needs to worry about this
If you use a chat app such as Claude, ChatGPT or Grok and ask it things in a chat a few times a day, you are not polling. It looks when you ask, much like you opening your phone. The question matters most for always-on agents, such as Claude Code, Codex, OpenClaw or Hermes, which run for hours and need to know about new messages without you prompting them.
It also matters if a developer is building something for you on the Spaces API. Ask them one question: "How does it find out about new messages?" The answer you want is "it waits for events" or "it gets a webhook", not "it checks every minute".
A note you can give an always-on agent
Most agents that follow Spaces' setup do this by default. If yours is set up by hand, a short note in its instructions makes the rule clear.
Checking for new messages:
- Never list chats or messages over and over to look for news.
- Wait for the next event from Spaces instead, and carry on from the
cursor it gives you each time.
- When an event says a new message arrived, read that chat and reply.
- If Spaces says to wait before checking again, wait at least that long.Questions to ask before you trust a set-up
- How does the agent find out about new messages? You want to hear "it waits for events" or "a webhook tells it".
- If it runs on a schedule, how often, and what does it do when nothing is new? It should wait, not keep looking.
- How many agents use this account? Each one should wait for events rather than check on its own.
- What does it do when told to wait? It should wait at least as long as it was told, then carry on.
Common mistakes
- Setting a scheduled job to "check the inbox every minute". A daily or hourly sweep that waits for events is safer and usually enough.
- Running two agents that both poll the same account. The checks add up, and the platform sees them all as one account.
- Treating a "please wait" answer as an error and retrying straight away. A request to wait is the system protecting the account.
- Re-reading whole chat histories to find the newest message. Events say which chat changed, so only that one needs reading.
Why it matters for your business
- Constant checking is a quiet way to make an account look automated, and avoiding it protects the account.
- Being told about messages means customers get answers sooner.
- Knowing the difference lets you ask the right question of any developer or tool.
- It explains why a good agent sometimes waits rather than looking again.
- It keeps several agents on one account from adding up to a flood of requests.
How Spaces handles it
Spaces gives every agent a way to wait for the next event: a new message, comment, reaction, invitation or account change. The agent asks once and Spaces answers the moment something lands, or after a short wait of up to 50 seconds if nothing has. That waiting reads Spaces' own record of events and never touches the platform, so an agent can do it again and again safely. Events are kept for 14 days, so an agent that was offline can catch up from where it left off.
When an agent does read conversations, Spaces answers from its own up-to-date copy wherever it can, and only asks the platform for what it does not hold yet, in small, paced steps. On Instagram, for example: Reading your conversations: no daily limit, a random 6 to 15 seconds apart and at most 120 an hour. Messages Spaces already holds are read without asking Instagram at all. Every answer also tells the agent how long to wait before checking again, and that wait is longer during warm-up and right after a platform pushes back.
An agent that runs on a server can have each event sent to its own web address instead, which is called a webhook. Either way, the agent never needs to poll. Spaces lowers the risk to your accounts; it cannot guarantee a platform will never restrict one.
In short
Polling is checking again and again for something new. For business messaging accounts it is slow and looks like a bot. A well-set-up AI agent waits to be told about new messages instead, which means faster replies and a calmer account.
FAQ
Is polling against the platforms' rules?
Platforms do not publish a simple rule about it, but constant automated checking is the kind of pattern they treat as bot activity. Avoiding it is one of the easiest ways to keep an account looking normal.
Does my ChatGPT or Claude chat poll my messages?
No. A chat app looks when you ask it in a chat, a few times a day, much like you checking your phone. Polling is a concern for software that runs continuously, such as an always-on agent.
What is an event?
An event is a notice that something happened on an account: a new message, a comment, a reaction, an invitation or a change to the account's status. An agent that waits for events hears about each one as it happens.
What is the difference between waiting for events and a webhook?
Both avoid polling. With waiting, the agent asks Spaces once and Spaces answers when something arrives. With a webhook, Spaces sends each event to the agent's own web address, which suits agents running on a server.
What if my agent was switched off for a day?
Events are kept for 14 days. When the agent comes back, it carries on from where it left off and works through what it missed.
Why does my agent sometimes say it has to wait before checking again?
Spaces tells it how long to wait so it never checks too often. The wait is longer while a new account warms up and right after a platform has asked Spaces to slow down. Waiting is the safe choice.
Is a scheduled daily sweep a form of polling?
A sweep once a day or once an hour is not the kind of constant checking that worries platforms, especially if the agent waits for events during it. The problem is checking every few seconds, all day, for something that has usually not happened.
Does reading my own conversations count against a daily limit?
Reading your own conversations has no daily limit, but it is paced so that Spaces asks the platform at most once every few seconds per account. Most reads are answered from Spaces' own copy and never reach the platform.