Why ATS Integration Matters
Your ATS (Applicant Tracking System) is the command center of recruiting. AI interview platforms that don't integrate create data silos, manual re-entry, and workflow nightmares.
Seamless integration means:
- Candidate data flows automatically (no duplicate entry)
- Interview results sync to candidate profiles
- Hiring team sees complete timeline in one place
- Analytics combine ATS + AI interview data
Supported ATS Platforms (2026)
ARIA provides native integrations with:
Tier 1 (Pre-built, one-click):
- Greenhouse
- Lever
- Workday
- iCIMS
- SmartRecruiters
Tier 2 (Configuration required):
- Bullhorn
- JazzHR
- BambooHR
- ADP Workforce Now
Custom:
- Any ATS with REST API via ARIA's open API
Integration Architecture
Data Flow
ATS → ARIA → ATS (complete loop)
(1) New candidate added to ATS
↓
(2) Webhook triggers ARIA interview invitation
↓
(3) Candidate completes AI interview
↓
(4) Results POST back to ATS candidate record
↓
(5) Status updates in both systems
APIs Used
ARIA provides:
- REST API (JSON over HTTPS)
- Webhooks for real-time events
- OAuth 2.0 authentication
- Rate limiting: 1000 requests/hour
ATS must provide:
- Candidate creation/update endpoints
- Custom field support (for AI scores)
- Webhook/event system (optional but recommended)
Step-by-Step: Greenhouse Integration
Prerequisites
- Greenhouse account with API access
- ARIA Enterprise plan
- Admin access to both systems
Step 1: Generate API Keys
In Greenhouse:
- Navigate to Settings → API Credentials
- Create new API key with permissions:
candidates:readcandidates:writeapplications:read
- Copy API key (shown once)
In ARIA:
- Dashboard → Integrations → Greenhouse
- Click "Connect Greenhouse"
- Paste Greenhouse API key
- Click "Authorize"
Step 2: Configure Interview Triggers
When should ARIA invite candidates?
Option A: Stage-based triggering
- Trigger when candidate reaches "Phone Screen" stage
- ARIA auto-invites within 5 minutes
Option B: Manual invitation
- Recruiters click "Send AI Interview" button in Greenhouse
- ARIA sends invitation immediately
Option C: Application-based
- Every new application automatically gets AI interview
- Used for high-volume roles
Configuration:
- ARIA Dashboard → Greenhouse Settings
- Select trigger type
- Map Greenhouse stages to ARIA interview types
Step 3: Field Mapping
Data to sync Greenhouse → ARIA:
- Candidate name
- Phone
- Resume/CV URL
- Job title applied for
- Application date
Data to sync ARIA → Greenhouse:
- Interview completion status
- AI-generated score (1-10)
- Transcript URL
- Recommendation (Advance/Maybe/Pass)
- Audio recording URL
Custom fields in Greenhouse:
Create these fields to receive ARIA data:
aria_interview_score(numeric, 0-10)aria_interview_status(dropdown: Pending, Completed, No-show)aria_transcript_url(URL)aria_recommendation(dropdown: Advance, Maybe, Pass)
Step 4: Test Integration
Test checklist:
- Add test candidate in Greenhouse
- Verify ARIA invitation sent
- Complete test interview
- Confirm score appears in Greenhouse candidate record
- Check transcript link works
- Verify status updates in both systems
Step 5: Go Live
- Enable for one job requisition first
- Monitor for 1 week
- Train recruiters on new workflow
- Scale to all appropriate roles
Workday Integration
Workday's API is more complex. Key differences:
Authentication: SAML + OAuth (not simple API key)
Data Model: Workday uses Workers, not Candidates
Setup Time: 2-4 weeks vs hours for Greenhouse
Recommended: Work with ARIA's integration team for Workday
Lever Integration
Lever integration is streamlined:
Webhook-based:
-
Configure webhook in Lever:
- URL:
https://api.ariahr.ai/webhooks/lever - Events:
candidate_stage_change
- URL:
-
ARIA listens for candidates entering "AI Interview" stage
-
Invitation sent automatically
-
Results POST back to Lever custom fields
Setup time: ~30 minutes
Custom API Integration
For ATS not on the pre-built list:
ARIA Public API
Base URL: https://api.ariahr.ai/v1
Authentication:
Authorization: Bearer YOUR_API_KEY
Key Endpoints:
Create Interview Invitation
POST /interviews
Content-Type: application/json
{
"candidate": {
"email": "jane.doe@example.com",
"name": "Jane Doe",
"phone": "+15551234567"
},
"job_id": "job_abc123",
"interview_kit_id": "kit_xyz789",
"send_immediately": true
}
Response:
{
"interview_id": "int_456def",
"invitation_link": "https://interview.ariahr.ai/start/int_456def",
"status": "invited",
"expires_at": "2026-01-08T00:00:00Z"
}
Retrieve Interview Results
GET /interviews/{interview_id}
Response:
{
"interview_id": "int_456def",
"status": "completed",
"score": 8.5,
"recommendation": "advance",
"transcript_url": "https://transcripts.ariahr.ai/int_456def.pdf",
"recording_url": "https://recordings.ariahr.ai/int_456def.mp3",
"completed_at": "2026-01-05T14:30:00Z",
"insights": {
"communication_score": 9,
"technical_score": 8,
"cultural_fit_score": 8
}
}
Webhooks
Subscribe to events:
Events available:
interview.invitedinterview.startedinterview.completedinterview.no_show
Webhook payload example:
{
"event": "interview.completed",
"interview_id": "int_456def",
"timestamp": "2026-01-05T14:30:05Z",
"data": {
"score": 8.5,
"recommendation": "advance",
"transcript_url": "...",
"recording_url": "..."
}
}
Webhook security:
- HMAC-SHA256 signature in
X-ARIA-Signatureheader - Verify signature to prevent spoofing
Troubleshooting Common Issues
Issue 1: Invitations Not Sending
Symptoms: Candidate added to ATS, no ARIA email received
Causes:
- Webhook not configured
- Email in spam folder
- Invalid email format
Fix:
- Check webhook configuration
- Whitelist
@ariahr.aidomain - Verify email format matches RFC 5322
Issue 2: Scores Not Syncing Back
Symptoms: Interview completed, data doesn't appear in ATS
Causes:
- Missing custom fields in ATS
- API permission issues
- Field mapping incorrect
Fix:
- Create required custom fields
- Verify API key has
writepermissions - Re-map fields in ARIA settings
Issue 3: Duplicate Candidates
Symptoms: Same candidate appears twice in ATS
Causes:
- Email mismatch (john@gmail.com vs john+aria@gmail.com)
- Deduplication logic not enabled
Fix:
- Use canonical email in both systems
- Enable "merge duplicates" in ATS settings
Security Best Practices
1. API Key Management
- Use separate keys for dev/staging/production
- Rotate keys quarterly
- Never commit keys to git
2. Data Encryption
- All API calls over HTTPS (TLS 1.3)
- Candidate PII encrypted at rest
- GDPR/CCPA compliant data handling
3. Access Control
- Limit API key permissions to minimum required
- Audit API usage monthly
- Implement IP whitelisting if possible
Performance Optimization
Rate Limiting:
- ARIA allows 1000 API calls/hour
- Batch requests when possible
- Use webhooks instead of polling
Caching:
- Cache candidate data for 5 minutes
- Reduces API calls by 60%
Async Processing:
- Don't wait for ARIA responses in user-facing workflows
- Use background jobs for syncing
Support & Resources
Documentation:
- Full API docs: developers.ariahr.ai
- Postman collection: github.com/ariahr/api-examples
Support Channels:
- Technical support: integrations@ariahr.ai
- Slack community: ariahr-developers.slack.com
- Office hours: Tuesdays 2-3pm ET
SLA:
- Response time: <4 hours for Enterprise customers
- Uptime: 99.9% guaranteed
Conclusion
ATS integration transforms ARIA from a standalone tool into a seamless part of your hiring workflow. The investment (30 min to 2 weeks depending on ATS) pays off in:
- Eliminated manual data entry
- Single source of truth for candidate data
- Better recruiter adoption
- Comprehensive analytics
Ready to integrate?
Or contact our integration team → for hands-on setup assistance.

