Authenticate using a Bearer token with the w_candidates scope against base URL https://{subdomain}.workable.com/spi/v3.
POST to /talent_pool/candidates with the candidate's name, email, and resume (as a URL or base64-encoded attachment), along with any custom attributes.
Set sourced: true (the default in v3) in the request body to flag the candidate as sourced rather than applied; include sourced: false only if you want the candidate to receive the application confirmation email.
Check the 201 response for the candidate's ID and store it for subsequent operations such as moving to a job or adding comments.
Optionally POST to /candidates/{id}/tags to attach pipeline tags for later filtering and search.
Known gotchas
In Workable API v3, candidates default to the uploaded/sourced state; setting sourced: false treats the candidate as applied and triggers automated emails — verify intent before setting this flag.
Duplicate detection is not automatic; submitting the same email twice creates a second record. Check for an existing candidate with GET /candidates?email= before creating.
The talent pool endpoint requires the w_candidates scope; a token with only r_candidates returns a 403.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp