{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api.truto.one/schemas/candidate", "title": "Candidate", "description": "A normalized candidate profile returned by the Truto Unified ATS API, representing a unified view of candidate data across 27 ATS providers.", "type": "object", "properties": { "id": { "type": "string", "description": "Unified candidate identifier assigned by Truto." }, "remoteId": { "type": "string", "description": "Candidate identifier in the source ATS." }, "firstName": { "type": "string", "description": "Candidate first name." }, "lastName": { "type": "string", "description": "Candidate last name." }, "email": { "type": "string", "format": "email", "description": "Primary email address." }, "phone": { "type": "string", "description": "Phone number." }, "location": { "type": "string", "description": "Candidate location (city, state, or country)." }, "source": { "type": "string", "description": "How the candidate was sourced (e.g., LinkedIn, referral, job board, direct)." }, "tags": { "type": "array", "items": { "type": "string" }, "description": "Tags or labels applied to the candidate by the recruiting team." }, "createdAt": { "type": "string", "format": "date-time", "description": "Record creation timestamp." }, "updatedAt": { "type": "string", "format": "date-time", "description": "Record last updated timestamp." } }, "required": ["id", "remoteId"] }