GET /api/v1/ubo/vessel/{imo}
Requires API key.
Response
GET /api/v1/ubo/vessels
Requires API key.
GLEIF ultimate parent chain
Overwatch ingests the GLEIF Level 2 Relationship Records golden copy weekly. Every active direct and ultimate accounting-consolidation relationship between Legal Entity Identifiers (LEIs) lands in thegleif_relationships table, and a Postgres function walks the consolidation graph from a child LEI up to its ultimate parents.
Use this when you have an LEI on an entity in a vessel’s ownership chain — registered owner, beneficial owner, or anything in between — and need to resolve the accounting-consolidation parent chain above it. The output is the canonical input to manual UBO investigations and to the sanctions screening pipeline.
Source: GLEIF RR-CDF (Relationship Record Common Data Format) JSON golden copy. CC0 Public Domain. Refreshed weekly.
get_ultimate_parent_chain(p_lei)
Recursive Postgres function. Follows ACTIVE GLEIF relationships of type IS_DIRECTLY_CONSOLIDATED_BY and IS_ULTIMATELY_CONSOLIDATED_BY from the input LEI up to each terminal parent. Returns one row per hop.
Parameters
Returns (table)
Example (Supabase client)
The function is exposed to
anon, authenticated, and service_role. Call it via the Supabase REST/PostgREST RPC interface, the Supabase JS / Python client, or directly in SQL against a read replica. There is no REST endpoint wrapper yet — the vessel-scoped /api/v1/ubo/vessel/{imo} graph above remains the recommended starting point when you are working from an IMO rather than an LEI.