FCRA Partner API enums
Every closed vocabulary the API accepts or returns, with every value and where it appears.
How to read the FCRA Partner API enums
Every closed vocabulary the FCRA Partner API accepts or returns, generated from the same reference data as the endpoint and object tables. Direction says whether a value is something you send, something you receive, or both. Treat a value you do not recognise as other and log it: values are added over time and announced on the changelog, never removed or renamed.
Fields whose values are the source's own text (for example a criminal record's currentStatus or a charge's disposition) are not enums and are not listed here; their closed twins live in the normalized object and are listed.
FCRA Partner API enums — every value
| Field | Where | Direction | Values | Default |
|---|---|---|---|---|
exclusionsCriminal searches only: which [exclusion-list records](/docs/criminal/record-object#exclusions) the search may furnish. `conviction_only` (the default): only exclusions whose basis is a criminal conviction, furnished as convictions dated by the exclusion date. `all`: also the administrative tier — license actions, debarments, loan defaults — furnished with `dispositionStatus: "sanction"`. `none`: no exclusion-list records. A list entry with no date of birth is withheld as `insufficient_identifiers` whatever the setting. | The SearchSpec object — FCRA search types | request | conviction_onlyallnone | conviction_only |
kind`file` — the consumer asks for their file; `dispute` — the consumer disputes information. A dispute is due 30 days after it is received. | The ConsumerRequest object | request | filedispute | — |
liveScope`relevant`: each search runs live in every state in `subject.addresses`, in `useLocation.state`, and in every jurisdiction that produced an exact date-of-birth candidate. `all`: live in every source that supports a live search for that type. Every other source is searched in our data, and `coverage` says which was which. | The OrderCreate object | request | relevantall | relevant |
methodHow it was obtained. | The Consent object — FCRA consent attestation fields | request | esignwet_signatureelectronic_clickrecorded_verbalother | — |
permissiblePurposeOne of `employment`, `tenant_screening`, `consumer_written_instructions` or `legitimate_business_need`. It must be held by the end user and covered by your agreement — otherwise 403 `fcra_purpose_not_allowed`, and the refusal is written to the evidence record. | The OrderCreate object | request | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
permissiblePurposesOne or more purposes the end user holds, every one within your partner agreement — otherwise 403 `fcra_purpose_not_allowed`. | The EndUserCreate object | request | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
permissiblePurposesReplaces the end user's purposes. At least one; every one within your partner agreement. | The EndUserPatch object | request | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
reasonWhy the consumer disputes it. | The DisputeCreate object | request | not_meinaccurateincompleteoutdatedother | — |
reasonWhy the consumer disputes it. | The PortalDisputeCreate object | request | not_meinaccurateincompleteoutdatedother | — |
status`suspended` stops the end user being named on new orders; `active` reinstates it. Existing orders are unaffected. | The EndUserPatch object | request | activesuspended | — |
typeThe search to run. | The SearchSpec object — FCRA search types | request | sex_offendercriminal | — |
kindAs sent. | POST /v1/consumer/requests · 201 | response | filedispute | — |
algThe same value as `algorithm`. | The Receipt object | both | Ed25519 | — |
algorithmThe signature algorithm. | The Receipt object | both | Ed25519 | — |
allowedPurposesThe permissible purposes your partner agreement covers. An end user and an order may use only these. `[]` without access. | The PartnerStatus object | both | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
cases.charges.fcraDispositionHow the charge was classified for the FCRA time rules: `conviction`, `non_conviction`, `sanction` (an exclusion-list entry whose basis is not a conviction) or `unknown`. | The FurnishedRecord object — furnished record fields | both | convictionnon_convictionsanctionunknown | — |
delivery.status`pending` (a retry is scheduled), `delivered` (your endpoint answered 2xx), `failed` (no 2xx within 24 hours of the event) or `no_endpoint` (no webhook endpoint was configured). | The Event object — FCRA event fields | both | pendingdeliveredfailedno_endpoint | — |
dispositionStatusCriminal records only: `conviction`, `non_conviction`, `sanction`, `mixed` or `unknown`, across the charges furnished. `sanction` is an exclusion-list record whose basis is not a criminal conviction — furnished only when the search asked for `exclusions: "all"`; a conviction-based exclusion reads `conviction`. | The FurnishedRecord object — furnished record fields | both | convictionnon_convictionsanctionmixedunknown | — |
incompleteReasonsWhy the result is `incomplete`: `source_unanswered`, `live_unavailable` and/or `verification_unavailable`. `[]` on every other result. | The Search object — FCRA search result fields | both | source_unansweredlive_unavailableverification_unavailable | — |
kind`source_response` — the official source's own response as received; `parsed_result` — our structured reading of that source's live search, as canonical JSON (recorded for every live sex offender check); `service_result` — for criminal searches, the criminal records service's live answer for that source. | The Capture object — FCRA evidence capture fields | both | source_responseparsed_resultservice_result | — |
liveScopeThe live scope the order runs with. | The Order object — FCRA order response fields | both | relevantall | — |
liveScopeThe order's live scope. | The Report object | both | relevantall | — |
matchBasis.stateAlways `dob_match`: an FCRA order furnishes exact date-of-birth matches only. | The FurnishedRecord object — furnished record fields | both | dob_match | — |
mode`live` — searched at the official source for this order; `snapshot` — searched in our data. | The CoverageRow object — FCRA search coverage fields | both | livesnapshot | — |
order.purposeThe stated purpose. | The PortalReport object | both | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
order.statusThe order status. | The PortalReport object | both | receivedin_progresspartialcompleteerror | — |
origin`partner` — opened through this API; `consumer_portal` — opened by the consumer in the portal. | The Dispute object — FCRA dispute fields | both | partnerconsumer_portal | — |
origin`dispute.created` only: where the dispute was opened. | The EventData object — webhook event data fields | both | partnerconsumer_portal | — |
outcome`record.corrected` only: the dispute outcome that changed the record. | The EventData object — webhook event data fields | both | verifiedmodifieddeletedunable_to_verify | — |
permissiblePurposeThe purpose stated on the order. | The Order object — FCRA order response fields | both | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
permissiblePurposeThe purpose stated on the order. | The Report object | both | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
permissiblePurposesThe purposes this end user holds. An order may state only one of these. | The EndUser object — FCRA end user fields | both | employmenttenant_screeningconsumer_written_instructionslegitimate_business_need | — |
reasonThe reason given. | The Dispute object — FCRA dispute fields | both | not_meinaccurateincompleteoutdatedother | — |
reasonThe reason given. | The PortalDispute object — consumer portal dispute fields | both | not_meinaccurateincompleteoutdatedother | — |
result`records_found`, `clear` or `incomplete`. `null` until the search finishes. `clear` means every relevant jurisdiction was searched live and answered, every other source answered, and nothing reportable was found. `incomplete` means a source did not answer, a relevant jurisdiction could not be searched live, or a record could not be re-verified — read `incompleteReasons`, and treat the furnished records as a lower bound. | The Search object — FCRA search result fields | both | records_foundclearincomplete | — |
result`search.completed` only, when the search did not error: its result. | The EventData object — webhook event data fields | both | records_foundclearincomplete | — |
roleWho is calling: `admin` for an API key and for an account admin's dashboard session, `user` for a team member's session. Only `admin` can change the webhook endpoint. | The PartnerStatus object | both | adminuser | — |
searches.resultThe result. `null` while the search is running. | The PortalReport object | both | records_foundclearincomplete | — |
searches.statusThe search status. | The PortalReport object | both | queuedin_progresscompleteunavailableerror | — |
searches.type`sex_offender` or `criminal`. | The PortalReport object | both | sex_offendercriminal | — |
signatureHeaderThe request header that carries each delivery's signature. | The WebhookEndpoint object — FCRA webhook endpoint fields | both | X-Offendersearch-Signature | — |
status`active`, or `suspended` — a suspended end user cannot be named on a new order (422 `end_user_suspended`). | The EndUser object — FCRA end user fields | both | activesuspended | — |
status`received` (nothing has run), `in_progress` (a search is running), `partial` (some searches are finished, others are not), `complete` (every search finished — read each search's `result`), `cancelled`, or `error` (every search errored; nothing was furnished — place a new order). | The Order object — FCRA order response fields | both | receivedin_progresspartialcompletecancellederror | — |
status`queued`, `in_progress`, `complete`, `unavailable` (no source could be reached; `result` is `incomplete`), `error` (the search could not run; nothing furnished), `cancelled` (the order was cancelled before it ran) or `superseded` (replaced by a re-verified search — see `supersededBy`). | The Search object — FCRA search result fields | both | queuedin_progresscompleteunavailableerrorcancelledsuperseded | — |
status`answered`, `unavailable` (could not be reached) or `not_searched`. | The CoverageRow object — FCRA search coverage fields | both | answeredunavailablenot_searched | — |
status`complete`, or `error` when every search errored. | The Report object | both | completeerror | — |
status`received` (logged; the clock is running), `investigating`, `verified` (confirmed as furnished; nothing changes), `modified` (corrected — see `changes`), `deleted` (removed, or found not to be the consumer's) or `unable_to_verify` (treated as deleted). | The Dispute object — FCRA dispute fields | both | receivedinvestigatingverifiedmodifieddeletedunable_to_verify | — |
statusThe dispute status. | The PortalDispute object — consumer portal dispute fields | both | receivedinvestigatingverifiedmodifieddeletedunable_to_verify | — |
type`sex_offender` or `criminal`. | The Search object — FCRA search result fields | both | sex_offendercriminal | — |
type`sex_offender` or `criminal`. | The FurnishedRecord object — furnished record fields | both | sex_offendercriminal | — |
type`sex_offender` or `criminal`. | The PortalRecord object — consumer portal record fields | both | sex_offendercriminal | — |
typeThe event type. | The Event object — FCRA event fields | both | order.createdsearch.completedorder.completedorder.cancelleddispute.createddispute.updatedrecord.corrected | — |
type`search.completed` only: the search type. | The EventData object — webhook event data fields | both | sex_offendercriminal | — |
typeThe event type, also in `X-Offendersearch-Event`. | The WebhookDelivery object — FCRA webhook payload fields | both | order.createdsearch.completedorder.completedorder.cancelleddispute.createddispute.updatedrecord.corrected | — |