List KYB verifications
Paginated list of KYB verifications for the organization, mirroring the KYC (docver) verifications list. Returns a envelope. Each row carries the table columns (company name, status, decision, risk) PLUS the expanded-row blocks: company (Company/Application cards), form_progress (widget stepper), checks_summary (checks badges + N/M progress) and stage — so the expanded row renders without a detail round-trip. Each row’s id is the KYB CASE id — use it to drill in via GET /webapi/v4/kyb/organization//verifications/.
Vocabularies. status (stored case lifecycle): draft → under_review (Submit locked the form) → the pipeline writes a terminal status from the risk score: approved (low) | manual_review (medium) | rejected (high) | failed (checks could not be scored). A compliance officer’s decision writes approved_manually / rejected_manually (the _manually suffix marks a reviewer-set status). remediation_requested is stamped when a remediation ticket is raised. stage (derived, expanded-row header): collecting_data | running_checks | manual_review | in_remediation | completed. checks_summary.checks[].type: registry | tin | document_verification | doc_manipulation | aml_company | aml_person | cross_check (the last four appear as their pipeline steps ship). checks[].status (lifecycle): pending | in_progress | completed | error. pending/in_progress rows carry no severity/verdict; error rows carry an errors[] entry and no severity/verdict. checks[].severity (normalized outcome — drives the badge COLOR and the passed/review/failed counters, only when completed): low → passed (green); medium → review (yellow); high → failed (red). An error status is counted separately (errored), not as a business failure. checks[].verdict (only when completed) is the normalized lower_snake verdict to render verbatim as the badge TEXT (registry: active/inactive/dissolved/not_found/found_similar/no_data; tin: match/mismatch/not_issued/no_data; document_verification: verified/not_verified/no_data; doc_manipulation: authentic/suspicious/tampered; aml_company/aml_person: no_hits/potential_match/confirmed_hit; cross_check: match/partial_match/mismatch; agentic_verification: no_findings/findings; website_triage: legitimate/content_mismatch/category_mismatch (the site backs the business but not the declared MCC)/parked/unreachable/prohibited_content/inconclusive (the site could not be inspected — blocked, no readable content, or not classified); business_risk_score carries NO verdict — severity is the risk level). form_progress.sections[].state: completed | current | pending, plus action_required on the synthetic kyc step when the representative’s KYC came back failed (that one is NOT a remediation). It always describes the ORIGINAL application; a live round has its own stepper in form_progress_remediation, covering only the sections it asks about, whose entries are completed | in_remediation. checks_summary likewise stays the run a remediation interrupted, and checks_summary_remediation is the run its re-submit earned: that one is absent for the whole time the case sits in in_remediation, because no such run exists yet. risk_level (Low|Medium|High) comes from the business_risk_score severity once it runs, else null (render ‘Not scored’). risk_score/decision (the full numeric RiskResult) stay null — the KYB score is a level, not a number; the stored status carries the decision.
Authorizations
Session cookie for web dashboard authentication.
Path Parameters
Organization id.
Query Parameters
Page size (5–25, default 20).
Zero-based page number.
Sandbox scope (also inferred from the session).
Keep only cases with a reviewer-set status (approved_manually / rejected_manually).
Filter by case status. approved and rejected also match their _manually variant.
Response
OK