Input
Output
JSON block withsuccess: true and nested candidate plus secured talent. Contact objects are not returned directly: visible emails are exposed as talent.emails, and visible sanitized phone numbers are exposed as talent.phones. The response also includes contactsLoading for email and phone while enrichment jobs run.
The candidate object exposes sourcingId for the sourcing that owns the candidate.
The talent object does not include internal LinkedIn/email/WhatsApp interaction flags.
The response does not expose internal workspaceId or userId fields.
Outreach activity
data also carries lastActivityAt, lastActivityDirection, lastActivityChannel, lastActivityContent and replyStatus: the latest outreach activity between the talent and the user who owns the API key, aggregated across every channel (LinkedIn, email, WhatsApp, SMS) and across legacy and dynamic sequences. Messages and invitations sent by other members of the workspace are not taken into account. They are computed with the same rules as get_candidates, so a candidate returns identical values from both tools.
replyStatus stays REPLIED even if a follow-up was sent after the talent replied (lastActivityDirection then becomes OUTBOUND). An accepted LinkedIn invitation counts as an inbound activity but not as a reply.
Errors
session not found or Not found when the candidate is outside the session workspace.
