KoviClient is the main entry point for the Kovi Python SDK. It provides methods to schedule interviews and retrieve the resulting interview URL programmatically.
Constructor
KoviClient(api_key)
Instantiate the client by passing your Techeval API key. The constructor validates the key format locally but does not make a network request — no credits are consumed at this step.
string
required
Your Techeval platform API key. Retrieve this from the Settings → API section of your Techeval dashboard. Always load this value from an environment variable or secrets manager — never hardcode it.
constructor.py
schedule_interview() Method
Schedule a new AI-conducted interview for a candidate. Kovi generates a unique interview link and emails it directly to the candidate.
Method Signature
schedule_interview_signature.py
Parameters
string
required
Your job description identifier created in the Techeval dashboard (e.g.
"JD-AI-7284"). Kovi uses this to load the associated job description for question generation.string
required
Full name of the candidate as it should appear in the scorecard and communications (e.g.
"Jane Doe").string
required
Candidate’s email address. Kovi sends the interview link to this address automatically after scheduling.
string
required
Candidate’s phone number including country code (e.g.
"+91-9999999999"). Used for SMS notifications and proctoring identity verification.string
required
Job title for this specific interview round (e.g.
"AI Engineer", "Backend Developer", "Staff Engineer"). Kovi tailors question framing and depth to this role.string
required
The stage of your recruitment pipeline this interview covers. Must be one of:
string
required
Candidate seniority level. Controls question complexity and the depth of technical follow-ups. Must be one of:
list[str]
required
List of technologies Kovi should focus on during the interview (e.g.
["Python", "FastAPI", "PostgreSQL"]). Keep the list specific to your production stack for the most relevant evaluation.integer
required
Target interview duration in minutes. Maximum: 60 minutes. One credit is consumed per interview regardless of duration (up to the 60-minute cap).
float
required
Minimum score a candidate must achieve to be considered a pass. Kovi grades on a rigorous rubric — a highly capable candidate typically scores around 6.5. Recommended range: 6.3–7.5.
integer
required
Number of hours until the generated interview link expires (e.g.
48 or 72). After expiration, the link becomes inactive and the candidate must be rescheduled.Return Value
schedule_interview() returns a dict containing the generated interview link on success.
Extracting the interview URL:
get_interview_url.py
Error Handling
Wrap everyschedule_interview() call in a try/except block. Network errors, authentication failures, and invalid parameters all raise exceptions.
error_handling.py