A1 Verified Prep
The authenticity layer under A1's recruiter workbench, hiring-manager portal, and portable badge. A tamper-evident, candidate-consented signal that every tailored bullet is grounded in real evidence — not fabricated to fit the job. The same graded evidence powers the ranking recruiters see, the shortlist hiring managers review, and a signed badge any ATS or portfolio can render and re-verify.
Evidence-grounded
Every tailored bullet is graded against the candidate's original CV. The score is the share that's grounded or faithfully reframed — fabrications are flagged, not counted.
Candidate-consented
The badge only resolves while the candidate has opted to share it for that application. Turn sharing off and the endpoint returns 404 — no data, no trace.
Tamper-evident
Each payload is canonicalised (JCS) and signed with HMAC-SHA256. Change one character and the signature no longer verifies.
Revocable
A cached badge can be re-checked at any time. If the candidate later withdraws consent, verify reports consent_still_active: false.
How the score is computed
The signature proves the score wasn't altered. This explains what the number means — and the badge now ships the breakdown behind it, so it's never a black box.
Every tailored bullet is graded against the candidate's original CV — the evidence ledger — and lands in one of four states:
- Grounded — directly supported by the original CV. (weight 1.0)
- Reframed — the same facts, re-emphasised for the role; still defensible. (weight 0.6)
- Unsupported — no backing in the original CV; must be confirmed or removed. (weight 0.0)
- Couldn't verify — excluded from the score rather than penalised.
score = (1.0·grounded + 0.6·reframed + 0.0·unsupported) ÷ graded × 100
The score is deterministic arithmetic, not a number an AI picks. The model's only job is to label each bullet; when it isn't sure, it defaults to unsupported (conservative by design). The signed badge payload carries the full breakdown — authenticity_grade_counts and bullets_graded — so a recruiter or ATS sees “84 = 8 grounded + 2 reframed + 1 unsupported, 11 bullets graded”, not a bare figure.
Candidate attestation. A claim the model can't verify against the CV isn't silently promoted. Where the candidate personally vouches for it, it's credited as attested and disclosed as such — the candidate's word, clearly labelled, never passed off as machine-verified.
Where Verified Prep shows up
The badge is the portable edge of it. The same graded evidence runs through the recruiter product end to end.
Evidence-cited ranking
Candidates are ranked with semantic skill matching, and every match quotes the exact CV line behind it — no unsourced scores.
Weighted requisition skills
Recruiters weight each required skill 1–5; the ranking re-computes live so the shortlist reflects what the role actually needs.
Hiring-manager portal
"Submit shortlist to hiring managers" opens a revocable, anonymised, evidence-cited portal at /client-pack/<token>/ — PII-free until interview.
For candidates — add your badge
Show recruiters your prep is honest. Drop it in your portfolio, LinkedIn featured section, or email signature.
- On your send-pack page, click “Create my shareable verified link”.
- Copy the URL under “Your shareable pack link” — it looks like
https://jobs.a1ergo.tech/verified-prep/<token>/. Share that page as-is, or take the token from it for the badge snippet below. - Changed your mind? Click “Stop sharing this link” — the page goes offline immediately and the badge stops resolving.
The YOUR_TOKEN below is the UUID from your shareable pack link (the part after /verified-prep/).
<a href="https://jobs.a1ergo.tech/api/v1/verified-prep/YOUR_TOKEN/">
<img src="https://jobs.a1ergo.tech/api/v1/verified-prep/YOUR_TOKEN/badge.svg"
alt="A1 Verified" height="20">
</a>
The badge renders inline as an SVG — no scripts, no tracking, CSP-safe. It shows your authenticity score. Stop sharing the pack link and the badge stops resolving too.
For ATS & platform integrators
Render the badge as a trust layer and re-verify it yourself. CORS is open (Access-Control-Allow-Origin: *) and responses are cacheable (max-age=3600).
GET/api/v1/verified-prep/<token>/
Returns the signed JSON-LD badge for an application
(application/vnd.a1jobs.verified-prep+json; v=1): pseudonymous alias, authenticity score, tailoring signals — never PII. The @context points at the schema below.
POST/api/v1/verified-prep/verify
Re-validate a payload you cached. Re-computes the HMAC and re-checks consent. Returns { valid, verified_at, stale, consent_still_active }.
GET/schema/verified-prep/v1
The JSON-LD @context document — stable, referenced by every payload. View the schema →
Quick start
# Fetch a signed badge
curl https://jobs.a1ergo.tech/api/v1/verified-prep/<token>/
# Re-verify later — checks the signature AND that consent is still live
curl -X POST https://jobs.a1ergo.tech/api/v1/verified-prep/verify \
-H 'Content-Type: application/json' \
--data @badge.json
Verifying the signature yourself
Don't want a round-trip? Verify offline:
- Take the payload and remove the
signaturekey. - Canonicalise the remainder with JCS (RFC 8785).
- Compute
HMAC-SHA256(key, canonical_bytes), base64url-encode, and compare (constant-time) tosignature.value. - The
signature.key_idnames the key that signed it — pin verification to it. (v1 publishes a single key;key_idis the hook that keeps old badges verifiable if we rotate keys.)
The privacy gate returns 404 for any token that isn't a live, consented application — it never reveals whether an application exists (no 401/403). Integer probes 404 too; tokens are opaque UUIDs.
Production integrations & API keys
Anonymous access works out of the box for evaluation — it stays consent-gated but is rate-limited per IP. Production integrators authenticate with an API key for higher limits and a stable, accountable identity:
curl https://jobs.a1ergo.tech/api/v1/verified-prep/<token>/ \
-H 'Authorization: Bearer vp_your_key'
Keys look like vp_… and are also accepted as an X-API-Key header. A key raises your rate limits — it never bypasses candidate consent. A presented key that is invalid or revoked returns 401 rather than silently falling back to anonymous, so misconfigurations surface immediately. The badge SVG stays public for embedding. Request a key at partnerships@a1ergo.tech.
Become a launch integration partner
Render “A1 Verified” in your ATS or job board and give every candidate a portable, tamper-evident honesty signal. We'll help you wire it up.
See it on your own roles
A 20-minute walkthrough — rank a real candidate, open the evidence, share a hiring-manager portal. No slides.