Skip to main content

Use case · ATS publishers

Build Powerful ATS Communication Features with API

Help recruiters search, enrich, and message candidates across supported LinkedIn, email, WhatsApp, and calendar connections without leaving your ATS.

Project-scoped connection path
ATS communication APIIllustrative
Search conversations
SL
Sarah Laurent

Yes, I’d be happy to find a time.

Now
MK
Michael Kim

Thanks for the context — let’s continue.

2h
AC
Amma Chen

Thanks for the context — let’s continue.

3h

Illustrative ATS workspace with project-scoped connected accounts.

Recruiting workflow

Search, Enrich and Message Candidates from Your ATS

Give recruiters a continuous path from candidate discovery to a scheduled interview while your product keeps the customer record and communication state together.

01

Candidate search

Bring supported search and profile context into the role workflow.

  • Role-aware filters
  • Saved candidate context
02

Profile enrichment

Turn captured profile references into structured candidate records.

  • Professional context
  • Traceable source data
03

Direct messaging

Start a conversation from the candidate profile using a connected account.

  • Channel choice
  • Delivery visibility

Recruiter communication

Unify Email, LinkedIn and WhatsApp Messaging for Recruiters

Keep candidate conversations in one recruiting workspace. Recruiters can see the channel, full thread, delivery state, and next action beside the candidate profile.

  • One candidate timeline across supported channels
  • Reply without switching products
  • Keep account health visible
Explore the API
Unify Email, LinkedIn and WhatsApp Messaging for RecruitersIllustrative
Search conversations
SL
Sarah Laurent

Yes, I’d be happy to find a time.

Now
MK
Michael Kim

Thanks for the context — let’s continue.

2h
AC
Amma Chen

Thanks for the context — let’s continue.

3h

Interview scheduling

Integrated Calendar Sync for Seamless Interview Scheduling

Offer available times, create the event, and return the booking state to the hiring workflow so recruiters and candidates share one confirmed next step.

  • Coordinate Google and Microsoft calendars
  • Keep timezone and attendee context visible
  • Attach the event to the candidate record
Explore the API
Integrated Calendar Sync for Seamless Interview SchedulingIllustrative
January 2026

MonTueWedThuFriSatSun

272829303112345678910111213141516

Recruiting profile

LinkedIn API Features Developed for Recruiting

Surface approved professional-network actions inside the ATS with clear entitlement and account-state boundaries.

  • Candidate profile context
  • Connection and message workflows
  • Observable account recovery
Explore the API
LinkedIn API Features Developed for RecruitingIllustrative
Enriched candidate record Complete
Professional email
[email protected]
Company
TechCorp · Software
Experience
12 years · Engineering leadership
Skills
System designAI platformsTeam building

Candidate engagement

Build Automated Candidate Communication for Your ATS

Design repeatable candidate sequences that combine supported messages, email follow-ups, and scheduling while stopping when a candidate replies.

  • Develop seamless candidate experiences
  • Customize precise automated sequences
  • Track every step in the ATS
Explore the API
Build Automated Candidate Communication for Your ATSIllustrative
Prospecting sequenceReply-aware workflow
Active
  1. 1
    Connection requestImmediately
  2. 2
    Follow-up messageWait 2 days
  3. 3
    Email follow-upWait 3 days
  4. 4
    Meeting reminderWait 2 days

Responsible automation

Monitor Activity Limits for Your ATS Integration

Show sending pace, account health, and attention states before a workflow is restricted. Operational feedback stays in the product instead of becoming a hidden integration failure.

  • Activity and delivery trends
  • Account-specific attention state
  • Actionable recovery guidance
Explore the API
Monitor Activity Limits for Your ATS IntegrationIllustrative
Account activityLast 7 daysOperational

Connection actionsHealthy

Message deliveryHealthy

Profile readsReview

Pace and account state remain visible before the next action.

Your extension captures. Your API enriches.

Turn Captured Candidate Context into an Enriched ATS Record

Accept the source reference from your product, resolve the permitted data, and return structured fields that recruiters can review before acting.

  • Preserve source and consent context
  • Normalize candidate fields
  • Keep enrichment results reviewable
Explore the API
Turn Captured Candidate Context into an Enriched ATS RecordIllustrative
Enriched candidate record Complete
Professional email
[email protected]
Company
TechCorp · Software
Experience
12 years · Engineering leadership
Skills
System designAI platformsTeam building

Developer start

Start Building in Minutes

Create a project, connect a test account, subscribe to the candidate events you need, and render the normalized response inside your ATS.

  • Project-scoped API key
  • Hosted connection flow
  • Webhook verification
Explore the API
Start Building in MinutesIllustrative
connect-account.tsTypeScript
const account = await moira.accounts.connect({  provider: "linkedin",  projectId: "project_recruiting",  scopes: ["messages:read"],});await moira.webhooks.verify(account.event);
Project boundary verified

Unified operations

One dashboard for all your integrations

Manage connected accounts, authentication state, and delivery health from one view while recruiters stay focused on the hiring workflow.

Explore the API
One dashboard for all your integrationsIllustrative
AccountsProject · Production+ Link account
20 Operational0 Authentication required0 Paused
Connected accounts 4 operational

One operating layer

A clear path from connected account to product outcome.

Use one project boundary for connection setup, supported actions, realtime evidence, and customer-controlled recovery.

One API contractAcross maintained connection families
Realtime evidenceDelivery, reply, and account-state events
Project scopedCredentials stay outside the customer UI

Trust by design

Built-In Security and Compliance

Protect connected-account operations with project isolation, encrypted credentials, audit-ready events, and explicit provider boundaries.

Encrypted credential storageProject-scoped accessSigned webhook deliveryObservable account recovery

Frequently asked questions

FAQs

Practical answers for product teams planning a connected communication workflow.

What channels can I integrate into my ATS?

The public provider catalogue shows the maintained connection families. Availability is checked when the customer connects an account.

Can users connect their own accounts?

Yes. Hosted connection flows keep provider credentials outside the ATS and return a project-scoped connected-account reference.

How do multi-channel candidate sequences work?

Your product defines the steps and stopping rules, while Moira returns supported delivery, reply, and account-state events.

How is candidate data protected?

Use least-privilege project keys, explicit retention controls, and the provider-specific consent and policy boundary shown during connection.

Quick start

Let’s integrate your ATS in days, not months.

Start with one candidate workflow, connect a test account, and expand only after the operational path is visible.

Build now
Quick start dashboardIllustrative
AccountsProject · Production+ Link account
20 Operational0 Authentication required0 Paused
Connected accounts 4 operational