ResumeForAI.

Contacting candidates on ResumeForAI

ResumeForAI pages don't publish email addresses. Every page carries a Contact endpoint instead, and messages sent to it are relayed to the candidate.

Why an endpoint rather than an address

An address is a black hole. You cannot tell a live one from a dead one, nothing comes back, and the same string is equally available to anyone scraping the page.

An endpoint answers. It confirms the message was accepted, it tells you when you have been rate limited rather than dropping the note in silence, and it is attributed — the candidate sees which company wrote, not an anonymous string.

Sending one message

Every published page exposes the same path. A person can use the form there without anything else; an automated sender needs a key.

curl -X POST https://alice.resume4.ai/contact \
  -H "Authorization: Bearer lgb_your_key" \
  -H "Content-Type: application/json" \
  -d '{
        "name":  "Dana Reyes",
        "email": "dana@acme.example",
        "org":   "Acme",
        "body":  "We are hiring a staff engineer ..."
      }'

A success returns 201 with a receipt:

{"id": 4821, "status": "delivered"}

Without a key you get 401 and a pointer back to this page. The email you send is where the candidate's reply arrives, so it must be one you read.

Finding candidates

Each page publishes machine-readable versions of itself, and both name the same contact endpoint:

Only candidates who have opted in appear in ResumeForAI's own search. Bulk retrieval across the corpus is a separate interface and is not open yet.

Limits, and why they exist

The second limit is not about you. One inbox drowning is enough to make candidates stop reading the ones that matter, and the relay is worth nothing after that.

Getting a key. Email admin@resume4.ai with the name of your company and an address to reach you at. Keys are issued by hand at the moment, so expect a person rather than a form.