Use cases · Recruiting & staffing
Candidates answer texts they'd never answer as calls
ATS and staffing platforms move at texting speed: interview invites, shift offers, document chasing. Handset turns your workflow triggers into compliant SMS from per-client numbers — with campaigns and numbers provisioned by API as fast as you add customers.
Templated sends from your triggers
Webhooks in your product fire POST /v1/messages — templates stay in your app, compliance runs in ours.
Numbers by market, per client
Search and buy area-code-specific numbers programmatically as your customers open new markets.
Campaigns without spreadsheets
10DLC brands and campaigns are API objects with status webhooks — onboarding a new client is code, not tickets.
Two-way, threaded
Candidate replies thread per conversation, ready to render inside your ATS timeline.
// A workflow trigger in your ATS await sendMessage({ body: { from: client.tenant.numberId, to: candidate.phone, body: template("shift_offer", { shift, rate }), }, headers: { "Idempotency-Key": trigger.id }, });
This page exists because a staffing platform asked for exactly this — and couldn't get it from their UCaaS provider. We built Handset so the answer is yes.
How it maps to the API
1 · Tenants & numbers
Tenant per client company
Each staffing client gets isolated numbers, threads, and opt-out lists.
Learn more2 · Compliance
Register their campaign by API
Brand → campaign → approval webhook; test mode approves instantly for development.
Learn more3 · Messaging
Trigger, send, thread
Interview invites and shift offers from your workflow engine; replies as webhooks.
Learn moreSound like your platform?
Three design-partner slots: free early access, white-glove 10DLC, and a founder on the call.