Candidate messaging inside your ATS
If you make applicant tracking software, Spaces lets your users message candidates on WhatsApp, LinkedIn, Instagram and Facebook Messenger without leaving your product. Each recruiter connects their own accounts inside your app, and your ATS reads and sends messages for them through one API and MCP server.
You add Spaces once, as a partner. Your users never sign up on spacesos.com and are never asked for a card, because you are the customer. Partner accounts are in early access. To become a partner, email hello@spacesos.com.
What your users get on each channel
- WhatsApp: Recruiters link their number with a QR code from your settings page. Candidate replies arrive as events, so your ATS can file each one on the right candidate.
- LinkedIn: Recruiters sign in to their own LinkedIn. Your product can show their conversations with candidates, send replies, and send careful one-to-one messages and connection requests inside LinkedIn’s limits.
- Instagram: Useful for hospitality, retail and creative hiring. Messages from candidates who write in after a hiring post reach your ATS like any other conversation.
- Facebook Messenger: Recruiters connect Messenger on their personal Facebook account, and those chats with candidates show up in your product too.
Spaces works with Instagram, WhatsApp, LinkedIn, Facebook and TikTok (coming soon). On Facebook, that means Messenger on a personal Facebook account.
Candidate on WhatsApp: Hi, is the warehouse role on nights or days?
In your ATS: The message arrives by webhook with your own id for the recruiter, and your product files it on the candidate’s record.
Recruiter, from your ATS: Hi Sam, it is days, 7am to 3pm. Could you do an interview on Thursday?
Candidate: Thursday is great.
Why one key per recruiter
Spaces gives each of your users a key of their own. A key that only knows one user cannot reach another user’s messages by mistake, a leaked key exposes one user only, and you can revoke one user’s access without touching the rest.
If your ATS has its own AI agent, it can use the same user key to screen candidates in the chat and update the record, with every Spaces tool and limit working as it does for any customer.
How to build it in
- Become a partner. Sign up on spacesos.com and email hello@spacesos.com with your workspace and the domains your app runs on. You get a partner key that manages your users and cannot read or send messages.
- Create a Spaces user for each recruiter. Use your own id for that user. Calling it again with the same id returns the same user, so it is safe to call each time they open your settings.
- Create a user key. Choose read, send or draft scopes. Store the key next to that user in your database.
- Send them a connect link. Spaces shows your name and logo, explains in plain words what connecting means, and returns the user to your app.
- Listen for events and test. One webhook gets every user’s new messages and account changes. Connect a test account of your own and send it a message.
Every partner endpoint is in the partner docs, and the tools your users’ keys can use are in the main docs.
What stays with your users
Your product decides how much your users automate. Spaces gives you the controls:
- user keys with read, send or draft scopes, so messages can wait for a person to approve them
- caps for each user on accounts, sends, new chats and monthly actions, lower than Spaces’ own limits
- pausing and resuming any user, with nothing sent while they are paused
- disconnecting one account, or deleting a user and their messages for good
- usage for each user, each month
Safety and limits
Spaces enforces each platform’s limits on every connected account, for every key. Your product cannot raise them. You can set lower caps for each user, never higher, and pause a user at any time. Nothing is sent while a user is paused.
Candidate messaging works best with people who applied. Spaces lowers the risk with limits, pacing and warm-up, and pauses sending if an account shows signs of a restriction. No tool can promise that a platform will never restrict an account, and Spaces does not either.
- A new chat only goes to someone who has messaged your number before, or whom you marked as opted in on the Accounts page.
- LinkedIn: up to 100 new conversations and 100 messages a day, at least 20 seconds apart.
- LinkedIn connection requests: 100 a day and 150 a week on a free account, 100 a day and 200 a week on Premium, Sales Navigator or Recruiter, spaced at random during working hours (22 a day on days 1 to 3, then 40, 60 and 85 a day on a paid account).
Every channel’s limits are on sending limits, and how Spaces protects accounts is on account safety.
FAQ
Do my users need a Spaces account?
No. You create a Spaces user for each of them with your partner key. They never sign up on spacesos.com and are never asked for a card.
Does Spaces store candidate records?
No. Your ATS stays the record. Spaces carries the messages and tells your product when a new one arrives.
Can recruiters reach candidates who never applied?
Only carefully, one at a time, inside each platform’s limits. Spaces is not for mass outreach, and on WhatsApp it refuses the same cold text sent to many people.
What happens when a user leaves my product?
Delete the Spaces user. That disconnects every account and removes their messages, keys and settings for good.
Can my product hold messages for review?
Yes. A user key with the draft scope writes messages that wait for a person to approve them.
How is a partner account priced?
You are billed monthly for your users’ connected accounts and actions. The partner rates are in the partner docs, and the plans for single businesses are on the pricing page.
Built for
Read more
Other use cases: CRM software, Outreach software, AI agent builders, or see all use cases.
Start building
Start with a workspace of your own to try the API, then email hello@spacesos.com to become a partner.