Implementation Overview
Implementation Type: Kombo-based IntegrationNote Format: HTML
Status: Production Ready Avionte integrates through Kombo’s unified API with additional custom implementations via Kombo’s passthrough API for Avionte-specific features. Currently in active development with core functionality operational.
Configuration
| Property | Value | Description |
|---|---|---|
| Provider Enum | avionte | Identifier in ProviderEnum |
| Note Format | HTML | HTML-formatted notes |
| Disposition Reasons | Supported | Inherited from Kombo |
| All Application Stages | Supported | Inherited from Kombo |
| Passthrough URL | /passthrough/avionte | Kombo passthrough endpoint |
Feature Coverage
Streaming Operations
Streaming Operations
Stream Jobs
Status: Supported (Inherited)Method:
_stream_jobs(updated_after, statuses)Streams jobs from Avionte via Kombo unified API.Stream Applications
Status: Supported (Inherited)Method:
_stream_applications(updated_after, for_job_ids)Streams applications via Kombo with automatic mapping.Stream Candidates
Status: Supported (Inherited)Method:
_stream_candidates(updated_after)Streams candidates from Avionte through Kombo.Application Management
Application Management
Move Application to Stage
Status: Supported (Inherited, with limitations)Method:
_move_application_to_stage(application, stage)Implementation Notes:Kombo has specific restrictions for Avionte stage management. Candidates CANNOT be moved to stages with remote IDs
PIPELINE or WEB_APPLICATION. These are Kombo-imposed limitations, not Avionte limitations.Get Disposition Reasons
Status: Supported (Inherited)Method:
get_disposition_reasons()Retrieves rejection reasons through Kombo.Reject Application
Status: Supported (Inherited)Method:
reject_application(application_id, reason_id)Standard rejection through Kombo API.Bulk Reject Applications
Status: Supported (Inherited)Method:
bulk_reject_applications(application_ids, reason_id)Bulk rejection support via Kombo.Create Application
Status: Supported (Inherited)Method:
_create_application_for_candidate(candidate, job)Creates applications through Kombo unified API.Get All Application Stages
Status: Supported (Inherited)Method:
_get_all_application_stages()Fetches all stages via Kombo.Job Management
Job Management
Get Job by ID
Status: Supported (Inherited)Method:
get_job_by_job_id(job_id)Job retrieval through Kombo.Get Enhanced Job
Status: Supported (Custom Implementation)Method:
get_enhanced_job(kombo_id, remote_job_id)Implementation Notes:Custom implementation augments Kombo job data with Avionte-specific fields via passthrough API.
Fetch Enhanced Jobs Batch
Status: Supported (Custom Implementation)Method:
_fetch_enhanced_jobs_batch_from_ats(limit, cursor)Batch fetches jobs with Avionte-specific data using /jobs/multi-query endpoint.Candidate Management
Candidate Management
Get Candidate by ID
Status: Supported (Inherited)Method:
_get_candidate_by_id(candidate_id)Candidate retrieval via Kombo.Find Candidates by Details
Status: Supported (Inherited)Method:
_find_candidates_by_details(first_name, last_name, email, phone)Candidate search through Kombo API.Get Resume
Status: Supported (Inherited)Method:
_get_resume_for_candidate_id(candidate_id)Resume retrieval via Kombo.Notes & Attachments
Notes & Attachments
Add Note to Application
Status: Supported (Inherited)Method:
_add_note_to_application(application, note, note_action_type)Note posting to applications via Kombo.Add Note to Candidate
Status: Not SupportedMethod:
_add_note_to_candidate(candidate, note, note_action_type)Status: Critical Priority - Not Yet ImplementedBaseKomboAtsClient doesn’t support adding notes to candidates. Needs custom implementation via Avionte passthrough API: POST /candidate/{id}/note.This is critical for sourcing workflows.Add Attachment to Application
Status: Supported (Inherited)Method:
_add_attachment_to_application(filename, application_id, pdf_b64)Attachment upload to applications via Kombo.Add Attachment to Candidate
Status: Supported (Inherited)Method:
_add_attachment_to_candidate(filename, candidate_id, pdf_b64)Attachment upload to candidates via Kombo.Custom Fields
Custom Fields
Application Custom Fields
Status: Not SupportedMethods:
_get_application_custom_fields()- Not yet implemented_update_application_custom_fields(application, updates)- Not yet implemented
- Get:
/application/customDetailDefinitions - Update:
PATCH /application/{id}
Candidate Custom Fields
Status: Not SupportedMethods:
_get_candidate_custom_fields()- Not yet implemented_update_candidate_custom_fields(candidate, updates)- Not yet implemented
- Get:
/candidate/customDetailDefinitions - Update:
PATCH /candidate/{id}
Job Custom Fields
Status: Supported (Custom Implementation)Methods:
_get_job_custom_fields()- Implemented via passthrough_get_job_custom_field_values(job_id)- Implemented via passthrough_update_job_custom_fields(job, updates)- Implemented via passthrough
/job/customDetailDefinitions endpoint.Implementation Notes
Stage Management Restrictions
Kombo has specific restrictions for Avionte:- Internal stages
PIPELINEandWEB_APPLICATIONcannot be used as move targets - Filter out these stages before presenting options to users
- This is a Kombo-imposed limitation for system stability
Job Custom Fields
Uses Avionte’s custom detail definitions API to:- Fetch field schemas
- Retrieve field values per job
- Update field values
Passthrough API Usage
Most Avionte-specific features use Kombo’s passthrough API at/passthrough/avionte.
Known Limitations
Application/Candidate Custom Fields
Custom field support for applications and candidates is not yet implemented. Job custom fields are fully supported.
Custom field support for applications and candidates is not yet implemented. Job custom fields are fully supported.
Implementation Progress
According to the implementation checklist:- 14 methods implemented (70% complete)
- 6 methods pending:
- 1 critical priority (candidate notes)
- 4 high priority (application/candidate custom fields)
- 1 medium priority (enhanced candidate data)
Related Files
- Implementation:
server/ats/avionte/avionte_ats_client.py - Models:
server/ats/avionte/avionte_models.py - Field Mappings:
server/ats/field_type_mapper.py(AVIONTE_FIELD_MAPPINGS) - Checklist:
server/ats/avionte/COMPLETE_AVIONTE_IMPLEMENTATION_CHECKLIST.md - Base Class:
server/ats/base_kombo_ats_client.py