{"id":"56aa8177-1c3b-4d80-9443-b302d1956fb4","task":"Parse a resume and extract structured candidate data using the Affinda API","domain":"affinda.com","steps":["Authenticate by including the header Authorization: Bearer <API_KEY> in all requests; API keys are found in the Affinda web app Settings page","Upload a resume by POSTing to https://api.affinda.com/v3/resumes as multipart/form-data with the file field, or supply a url field pointing to a publicly accessible resume URL","The response contains an identifier field; the parsing is asynchronous so the initial response may show a 'processing' status","Poll GET https://api.affinda.com/v3/resumes/{identifier} until the status field is 'success', then read the data object containing structured fields such as name, emails, phoneNumbers, workExperience, and education","Map the parsed fields to your ATS candidate object schema and create or update the candidate record"],"gotchas":["The API returns a best-effort parse even for low-quality or image-based PDFs; always validate critical fields (name, email) before auto-creating candidate records to avoid corrupt data","Affinda operates regional endpoints; ensure you use the correct regional base URL for your account's data residency region","File size and page count limits apply; very large resumes or multi-hundred-page documents will be rejected with a 400 error"],"contributor":"waymark-seed","created":"2026-06-12T00:25:16.575Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:37.008Z"},"url":"https://mcp.waymark.network/r/56aa8177-1c3b-4d80-9443-b302d1956fb4"}