In November 2026, email joined WhatsApp, Instagram, LinkedIn, Messenger and X as a channel in Spaces, your AI agent can now publish to Instagram, and every AI client has its own setup page. Owners can hand a chat to a person on their team, pause all sending with one click, check how each account is doing and start a trial without a card. For anyone building on Spaces, the month also brought new webhook events, post analytics and LinkedIn mentions.
The dashboard now opens on Home, which shows whether your agent is answering: accounts connected, your agent, messages sent today and your plan, plus the one next step. Accounts, Your agent, Approvals, Automations and Settings each have their own page, with a left menu on a computer and a menu at the top on a phone. API keys, sending limits, webhooks and the usage export sit under For developers. Accounts that stop working can be reconnected from the Accounts page. Old links such as /dashboard/members, /dashboard/security and /dashboard/billing/cancel still work.
Improved
Last inbound message in account health
Account health and the accounts list now show last_inbound_at, when a customer last wrote to the account, so you can tell a quiet account from one that stopped receiving.
New
Your own ids on accounts
PATCH /v1/messaging/accounts/{id} with external_id, or the set_account_external_id tool, tags an account with your own id, such as the client it belongs to. Find it again with ?external_id= on the accounts list.
Improved
When each account last had activity
GET /v1/messaging/accounts and list_messaging_accounts return last_event_at, so an account that has gone quiet is easy to spot.
Improved
Search, filter, sort and page the accounts list
GET /v1/messaging/accounts takes q, channel, status (including needs_attention), sort, limit and cursor, and returns total, next_cursor and status_since. With no query it returns every account, as before.
New
Check any account's health
GET /v1/messaging/accounts/{id}/health and the get_account_health tool say whether an account is working, what to do if not, when its status changed, its warm-up, and how many messages and new chats are left today.
Mention people in LinkedIn posts by their profile link
create_post and scheduled LinkedIn posts now turn @ and a profile link, or @[Name](link), into real mentions, the same way comments do. Company pages use @[Name](https://www.linkedin.com/company/12345).
GET /v1/messaging/analytics/posts and the get_post_analytics tool add up your LinkedIn and Instagram posts over up to 90 days: totals, a daily series, the five best posts and the change against the previous period.
Images are fitted to each platform before publishing
Instagram images are padded, never cropped, to between 4:5 and 1.91:1, at most 1440 px wide and 8 MB, and stories to 9:16; LinkedIn images over 6012 px are scaled down. Scheduled posts get the same treatment, and the answer lists every change in media_adjustments.
Posts include reactions or likes, comments, reposts, impressions and, on LinkedIn, clicks, engagement, reach and followers gained.
New
Publish to Instagram
create_post publishes Instagram feed posts and stories with images or video, a caption and a location, as well as LinkedIn posts with media and a link preview.
GET /v1/messaging/webhooks/{id}/deliveries lists the past week of deliveries with their status code and attempts, never the message text. POST .../deliveries/{delivery_id}/redeliver sends one again now.
POST /v1/messaging/webhooks/{id}/test sends one signed example of any event type to that webhook straight away and returns the status your server answered with.
GET /v1/messaging/usage/export returns one row per account per day as CSV or JSON: messages sent, new chats and other actions by type. No message text. The export_messaging_usage tool returns the same.
New
Send feedback from your agent
POST /v1/feedback and the send_feedback tool let an agent report a bug, a missing feature or a docs gap, with the request it was making.
New
Changelog in the API
GET /v1/changelog returns these entries, newest first, without a key. Filter with area and before.
Profiles, followers, invitations, reactions, edits, forwards, LinkedIn search, companies, jobs and Recruiter actions are available under the same key and limits.
Usage and billing
Improved
The trial starts without a card
Sign up and connect an account straight away. The first connect starts a 14-day trial on Pro, or 30 days with a code, and no card is needed. POST /v1/messaging/billing/checkout (create_messaging_billing_checkout) with plan and interval chooses a plan during the trial and returns url null with trial_started, plan and trial_ends_at. Spaces emails a reminder before the trial ends with a link to add a card. If it ends without one, nothing is charged, writes return BILLING_REQUIRED, reads still work and accounts stay connected; adding a card resumes sending right away.
A billing pause also pauses sending, and trials can add a week
While billing is paused, replies, new messages, posts and other writes are refused with BILLING_REQUIRED and a message that says until when. Accounts stay connected, reads keep working, and Resume billing now on the dashboard starts billing and sending again at once. During a trial, the cancel flow offers one more week of trial instead of a discount, and cancelling a trial ends it on its current end date without a charge.
The owner can cancel a plan from the dashboard in three short steps: a reason, one offer that fits it, and a plain confirmation that shows the exact end date. The plan always runs to the end of the paid period, a confirmation email follows, and Keep my plan undoes it until that date.
The usage export now has rows for accounts that were disconnected or deleted during the range, so totals match what was sent. An account that is gone shows as channel unknown, named Disconnected account. No message text is included.
Comments
New
Mention people in LinkedIn comments by their profile link
Write @ and a LinkedIn profile link in a comment, or @[Name](link) to choose the name shown, and Spaces turns it into a real mention. Company pages use @[Name](https://www.linkedin.com/company/12345).
A comment routine can send the commenter a private message where the platform allows it (Instagram today) with the private_reply action. Keywords match whole words by default, or anywhere with match: contains. Replies rotate per comment from a list you give. One routine messages each person once, unless repeat_for_new_comments is true. Every message uses the usual account limits.
POST /v1/messaging/pause no longer needs a reason. Without one, the pause is stored as "Paused from the dashboard", and refused actions repeat that text with AGENT_PAUSED. On the dashboard, Pause everything asks one short question before it pauses, and the paused state shows since when with a single Resume sending button.
A scheduled message, scheduled post or routine run held for approval now shows status awaiting_approval with its approval_id, instead of sent or done. It becomes sent (a post: published, a run: done) when approved, or rejected. An approved scheduled post gets its first comment once it is published.
Tag a chat and give it an owner from your workspace with GET and PUT /v1/messaging/accounts/{id}/chats/{chat_id}/tags and PUT .../owner, or the get_chat_tags, set_chat_tags and set_chat_owner tools. The chat list shows tags and owner and filters by tag, owner, unread and unanswered. Only the labels and ids are stored, never message text.
New
Every attachment
Download images, files, voice notes, video and GIFs from any message.
Safety
New
Sending limits and account safety pages
/limits lists each channel's limits and warm-up and explains every refusal; /safety explains how accounts connect and stay safe.
Hand a chat to a person, and the agent stays out of it
PUT /v1/messaging/accounts/{account_id}/chats/{chat_id}/handover (hand_to_person) hands a chat to a person on your team, and DELETE on the same path (hand_back_to_agent) hands it back. Until then every agent reply, chat action, scheduled message, routine and approval for that chat is refused with HANDED_OVER; the person it was handed to can still reply with their own key. The chat list shows handed_over and handed_to and filters on handed_over, and webhooks get chat.handed_over and chat.handed_back.
The owner can make another member the owner from Team members in the dashboard, or with POST /v1/workspace/owner and member_id. The previous owner becomes an admin, and the change is kept in the audit log.
FAQ
What changed in Spaces in November 2026?
In November 2026, email joined WhatsApp, Instagram, LinkedIn, Messenger and X as a channel in Spaces, your AI agent can now publish to Instagram, and every AI client has its own setup page. Owners can hand a chat to a person on their team, pause all sending with one click, check how each account is doing and start a trial without a card. For anyone building on Spaces, the month also brought new webhook events, post analytics and LinkedIn mentions.
How many updates did Spaces ship in November 2026?
42 updates between 2 November 2026 and 9 November 2026, across 17 areas. The busiest were Accounts, Posting, Webhooks.
Do these updates change a setup that already works?
Updates are made so that a setup that already works keeps working. New tools and fields are added alongside the ones you already use, and your AI agent can read the list to see what is new.
Can my AI agent read these updates?
Yes. Your agent can read the same list at GET https://api.spacesos.com/v1/changelog, newest first, without a key, and filter it by area or by date.
How do I check what my AI agent writes before it is sent?
Ask your AI agent to hold its replies as drafts. It can then show you what is waiting, and you approve or reject each one through your agent. To stop everything at once, use Pause everything in Settings.
Do I need a card to try Spaces?
No card needed. The trial starts when you connect your first account, and you only add a card if you want to keep going once it ends. Plans are on the pricing page.
Try it with your own accounts
Connect the WhatsApp, Instagram, LinkedIn, Messenger, X and email accounts you already use, then add Spaces to your AI agent. No card needed for the trial. See what Spaces does and how it keeps your accounts safe.
Comments
New
Mention people in LinkedIn comments by their profile link
Write @ and a LinkedIn profile link in a comment, or @[Name](link) to choose the name shown, and Spaces turns it into a real mention. Company pages use @[Name](https://www.linkedin.com/company/12345).
More: LinkedIn
New
Comment-to-DM routines (early access)
A comment routine can send the commenter a private message where the platform allows it (Instagram today) with the private_reply action. Keywords match whole words by default, or anywhere with match: contains. Replies rotate per comment from a list you give. One routine messages each person once, unless repeat_for_new_comments is true. Every message uses the usual account limits.
More: Comment-to-DM, Instagram
New
Comments on LinkedIn and Instagram
Read, reply to, react to and delete comments, and answer an Instagram comment with a private message.
More: Comment-to-DM