{"note":"Every value set the API accepts or returns, derived from the constants the code enforces, so this can never drift from what is actually validated.","enums":[{"name":"eventType","description":"The kind of record an event holds. Disjoint kinds: OUTCOME types (kind:\"outcome\") are the ONLY inputs that move the reliability score; most are reportable via POST /events; the two dispute-resolution outcomes are written by the deterministic dispute engine, never by a platform. QUALIFICATION types (kind:\"qualification\") record a professional-record claim (education/skills/certifications/employment), feed the SEPARATE verified-profile measure, and NEVER move a score; reported via POST /api/v1/users/{id}/qualifications. PROJECT types (kind:\"project\") record a self-presented portfolio link, reported via POST /api/v1/users/{id}/projects, and also never move a score.","usedIn":["POST /api/v1/events","POST /api/v1/events/batch","POST /api/v1/users/{id}/qualifications","POST /api/v1/users/{id}/projects","POST /api/v1/users/{id}/score/project","GET /api/v1/events/export"],"values":[{"value":"TRANSACTION_COMPLETED","description":"A transaction the user was party to completed successfully. Counts as a positive completed outcome.","kind":"outcome","ingestible":true},{"value":"TRANSACTION_DISPUTED","description":"A transaction was disputed by the counterparty. Counts against behavioural quality.","kind":"outcome","ingestible":true},{"value":"TRANSACTION_CANCELLED","description":"A transaction was cancelled. Neutral: it neither builds nor damages the record.","kind":"outcome","ingestible":true},{"value":"REVIEW_VERIFIED","description":"A counterparty-verified review or attestation of delivered work. Positive completed outcome.","kind":"outcome","ingestible":true},{"value":"CONTRACT_FULFILLED","description":"A contract or commitment was delivered as agreed. Positive completed outcome.","kind":"outcome","ingestible":true},{"value":"CONTRACT_CANCELLED","description":"A contract was cancelled before delivery was due. Neutral.","kind":"outcome","ingestible":true},{"value":"CONTRACT_BREACHED","description":"A deadline passed with nothing delivered. A full failure, the heaviest negative signal.","kind":"outcome","ingestible":true},{"value":"DISPUTE_FILED","description":"A dispute was opened against the user. Weighs on the dispute rate until it resolves.","kind":"outcome","ingestible":false},{"value":"DISPUTE_RESOLVED_FOR_USER","description":"A dispute was decided in the user's favour. Positive completed outcome; partially offsets the dispute rate.","kind":"outcome","ingestible":true},{"value":"DISPUTE_RESOLVED_AGAINST_USER","description":"A dispute was decided against the user. The strongest adverse signal alongside CONTRACT_BREACHED.","kind":"outcome","ingestible":false},{"value":"EDUCATION_VERIFIED","description":"An education claim (degree, diploma, enrollment). Part of the verified-profile record, never a scoring input; prestige is never ranked.","kind":"qualification","ingestible":false},{"value":"SKILL_VERIFIED","description":"A skill claim. Part of the verified-profile record, never a scoring input.","kind":"qualification","ingestible":false},{"value":"CERTIFICATION_VERIFIED","description":"A professional certification or licence claim. Part of the verified-profile record, never a scoring input.","kind":"qualification","ingestible":false},{"value":"EMPLOYMENT_VERIFIED","description":"An employment claim (role at an employer). Part of the verified-profile record, never a scoring input; the employer is never ranked.","kind":"qualification","ingestible":false},{"value":"PROJECT_LOGGED","description":"A personal project the subject links on their professional profile (a photo record of finished work, a live URL, a case study, a code repository). Self-reported by default; verified only when a third party confirms it. Never a scoring input; the link is stored as text and never fetched.","kind":"project","ingestible":false}]},{"name":"stakeLevel","description":"How much an event counts. Optional on ingestion (defaults to MEDIUM). Auto-imported activity is capped below HIGH so an integration cannot manufacture high-stake evidence.","usedIn":["POST /api/v1/events","POST /api/v1/events/batch","POST /api/v1/users/{id}/score/project"],"values":[{"value":"HIGH","description":"A high-stakes outcome: counts for more, in both directions.","weight":1.5},{"value":"MEDIUM","description":"The default. Ordinary weight.","weight":1},{"value":"LOW","description":"A low-stakes outcome: counts for less, so volume of trivia cannot manufacture a score.","weight":0.5}]},{"name":"scoreBand","description":"The human-readable label for a score. Returned, never sent. Bands are ordered highest-first; a score falls in the first band whose `minScore` it reaches.","usedIn":["GET /api/v1/users/{id}/score","GET /api/v1/verify/{token}","score.updated / score.band_changed webhooks"],"values":[{"value":"Excellent","description":"A long, independently verified record of on-time delivery with no adverse outcomes.","minScore":80},{"value":"Good","description":"A solid verified track record; occasional lateness at most.","minScore":65},{"value":"Fair","description":"A real record with mixed outcomes, or strong activity that is not yet verified (unverified activity tops out here).","minScore":50},{"value":"Building","description":"Some evidence, but too thin or too mixed to rely on yet.","minScore":35},{"value":"Unproven","description":"No verified track record. Deliberately NOT \"risky\": an absence of evidence is not evidence of failure.","minScore":20},{"value":"High Risk","description":"Verified failures on the record. Only a verified adverse outcome can land a profile here.","minScore":0}]},{"name":"disputeStatus","description":"The lifecycle state of a dispute. Outcomes are decided deterministically from the record; no reviewer discretion picks one.","usedIn":["POST /api/v1/disputes/{id}/resolve","dispute.resolved webhook"],"values":[{"value":"OPEN","description":"Filed and awaiting a deterministic outcome (or the response window lapsing).","terminal":false},{"value":"RESOLVED_FOR_USER","description":"Decided in the user's favour. Terminal.","terminal":true},{"value":"RESOLVED_AGAINST_USER","description":"Decided against the user. Terminal.","terminal":true}]},{"name":"confirmationRequestStatus","description":"The lifecycle state of a counterparty confirmation request. Only CONFIRMED writes a ledger event (verified, because a distinct token-holding party confirmed); every other terminal state writes nothing.","usedIn":["GET /api/v1/confirmations","GET /api/v1/confirmations/{id}","POST /api/v1/confirmations/{id}/respond"],"values":[{"value":"PENDING","description":"Created and awaiting the counterparty. No event has been written and no score has moved.","terminal":false,"writesEvent":false},{"value":"CONFIRMED","description":"The counterparty confirmed the outcome via the token. The ledger event was written with isVerified: true; the confirmation is the third-party witness.","terminal":true,"writesEvent":true},{"value":"DECLINED","description":"The counterparty declined. Nothing is written; a decline is not evidence of a negative outcome.","terminal":true,"writesEvent":false},{"value":"EXPIRED","description":"The confirmation window elapsed before the counterparty acted. Nothing is written.","terminal":true,"writesEvent":false},{"value":"CANCELLED","description":"The requesting platform cancelled the request before it was decided. Nothing is written.","terminal":true,"writesEvent":false}]},{"name":"referenceRequestStatus","description":"The lifecycle state of a reference / employment-verification request. Only CONFIRMED records a qualification (verified, because a distinct third party who was there confirmed the claim); every other terminal state records nothing. A qualification never moves the reliability score.","usedIn":["GET /api/v1/references","GET /api/v1/references/{id}","POST /api/v1/references/{id}/respond"],"values":[{"value":"PENDING","description":"Created and awaiting the counterparty. No qualification has been recorded and no score has moved.","terminal":false,"writesEvent":false},{"value":"CONFIRMED","description":"The counterparty confirmed the claim via the token. The qualification was recorded with isVerified: true; the confirmation is the third-party witness. The reliability score is untouched (qualifications never score).","terminal":true,"writesEvent":true},{"value":"DECLINED","description":"The counterparty declined. Nothing is recorded; a decline is not evidence against the claim.","terminal":true,"writesEvent":false},{"value":"EXPIRED","description":"The window elapsed before the counterparty acted. Nothing is recorded.","terminal":true,"writesEvent":false},{"value":"CANCELLED","description":"The requesting platform cancelled the request before it was decided. Nothing is recorded.","terminal":true,"writesEvent":false}]},{"name":"subjectType","description":"What kind of thing a scored subject is. A LABEL, never a second scoring system: every subject type runs through the IDENTICAL deterministic formula and no subject type is weighted differently. What the label changes is which self-attestation rule applies: an agent's own operator, and a business itself, can never be the witness for their own outcomes.","usedIn":["POST /api/v1/agents","GET /api/v1/agents/{id}","POST /api/v1/businesses","GET /api/v1/businesses/{id}","GET /api/v1/verify/{token}/delivery-receipts","GET /api/v1/verify/{token}/business-record"],"values":[{"value":"PERSON","description":"A human subject. The default, and what every pre-existing record is."},{"value":"AGENT","description":"An autonomous software agent. Its own declared operator can never be the witness for its deliveries (docs/AGENTS.md)."},{"value":"ORGANIZATION","description":"A business. Its record is built from outcomes ANOTHER business confirmed; outcomes it reports about itself, or confirms by naming itself as its own counterparty, are recorded but never confirmed (docs/BUSINESSES.md)."}]},{"name":"platformTier","description":"The trust tier of the platform that reported an event. Blended across a user's platforms and applied as a multiplier, so where evidence came from matters.","usedIn":["GET /api/v1/users/{id}/platforms","POST /api/v1/users/{id}/score/project","POST /api/v1/admin/platforms"],"values":[{"value":"ENTERPRISE","description":"Highest-trust reporting platform: its events carry full weight.","trustMultiplier":1},{"value":"GROWTH","description":"Established reporting platform.","trustMultiplier":0.85},{"value":"STARTER","description":"Newer reporting platform.","trustMultiplier":0.7},{"value":"SELF_REPORTED","description":"Unvetted or self-reported source: heavily discounted, so anyone standing up a platform cannot mint trust.","trustMultiplier":0.4}]}]}