Company KYB Verification: LEI (GLEIF) + SEC EDGAR | Johto Data
Pricing
Pay per event
Company KYB Verification: LEI (GLEIF) + SEC EDGAR | Johto Data
Verify companies in one call: GLEIF LEI records (status, registration no., jurisdiction, address, direct/ultimate parent) + SEC EDGAR identity (CIK, ticker, EIN, SIC, last filing). Fresh, clean company data. $0.40 per 1,000 rows.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Jo
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 hours ago
Last modified
Categories
Share
Company KYB Verification: LEI (GLEIF) + SEC EDGAR Lookup | Johto Data
Verify a company in one call. You get GLEIF LEI records (legal name, status, registration number, jurisdiction, legal and HQ address, direct and ultimate parent LEI with relationship status) and SEC EDGAR identity (CIK, ticker, exchange, EIN, SIC, state of incorporation, latest filing) in one flat schema. $0.40 per 1,000 company rows ($0.0004 per row) plus $0.00005 per run start.
For AI agents
Call it when:
- The user wants to confirm that a company exists and is active, or wants its LEI, registration number, jurisdiction, registered address or parent company.
- The user wants a company's direct or ultimate parent LEI (GLEIF Level 2), or the reason GLEIF records no parent.
- The user has an LEI, an SEC CIK or a US ticker and wants the matching legal entity record.
- The user wants KYB / counterparty checks for listed US companies and any LEI-registered entity worldwide (fund, bank, corporate).
Don't call it when:
- You need EU VAT validation. VIES terms forbid retransmission, so this Actor doesn't offer it.
- You need UK Companies House officers or PSC, or a private company without an LEI or SEC filings. It will return nothing for those.
- You need sanctions or PEP screening, credit scores or beneficial-owner people data. None of these are included.
Input: by name (GLEIF top matches plus the SEC listed-company match):
{"query": "Tesla, Inc.", "matchesPerQuery": 3, "maxItems": 10}
Input: by identifier:
{"lei": ["7ZW8QJWVPR4P1J1KQY45"], "ticker": ["AAPL"], "cik": ["1318605"]}
Output: one row per entity per source. Every row also has 8 flat parent fields, so agents can read ownership without walking nested objects. Example for a subsidiary (Google LLC, LEI 7ZW8QJWVPR4P1J1KQY45, local run 2026-10-22):
{"directParentLei": "5493006MHB84DD0ZWV18", "directParentName": "ALPHABET INC.", "directParentRelationshipStatus": "ACTIVE", "directParentReportingException": null,"ultimateParentLei": "5493006MHB84DD0ZWV18", "ultimateParentName": "ALPHABET INC.", "ultimateParentRelationshipStatus": "ACTIVE", "ultimateParentReportingException": null}
When GLEIF records no parent, the LEI and name are null and the exception reason is filled, e.g. "directParentReportingException": "NO_KNOWN_PERSON" (GLEIF code meaning no parent entity is known to consolidate it). Full rows: These rows come from a local run of this source on 2026-10-22. GLEIF row:
{"source": "gleif","matchedBy": "query:Tesla, Inc.","name": "TESLA, INC.","otherNames": [],"identifiers": {"lei": "54930043XZGB27CTOV49","companyNumber": "0805587591","registrationAuthorityId": "RA000637","cik": null,"ticker": null,"bic": ["TSLAUS66XXX"]},"status": "ACTIVE","incorporationDate": "2024-06-14","jurisdiction": "US-TX","registeredAddress": {"lines": ["C/O C T Corporation System","1999 Bryan Street","Suite 900"],"city": "Dallas","region": "US-TX","postalCode": "75201","country": "US","text": "C/O C T Corporation System, 1999 Bryan Street, Suite 900, Dallas, US-TX, 75201, US"},"headquartersAddress": {"lines": ["1 Tesla Road"],"city": "Austin","region": "US-TX","postalCode": "78725","country": "US","text": "1 Tesla Road, Austin, US-TX, 78725, US"},"sic": [],"sicDescription": null,"stateOfIncorporation": null,"lei": {"registrationStatus": "ISSUED","entityStatus": "ACTIVE","legalFormCode": "C5K7","legalFormOther": null,"category": "GENERAL","initialRegistrationDate": "2018-01-04","lastUpdateDate": "2026-05-04","nextRenewalDate": "2027-05-14","managingLou": "5493001KJTIIGC8Y1R12","corroborationLevel": "FULLY_CORROBORATED","parent": {"lei": null,"name": null,"country": null,"relationshipType": null,"relationshipStatus": null,"reportingException": "NO_KNOWN_PERSON","exceptionCategory": "DIRECT_ACCOUNTING_CONSOLIDATION_PARENT"},"ultimateParent": {"lei": null,"name": null,"country": null,"relationshipType": null,"relationshipStatus": null,"reportingException": "NO_KNOWN_PERSON","exceptionCategory": "ULTIMATE_ACCOUNTING_CONSOLIDATION_PARENT"}},"directParentLei": null,"directParentName": null,"directParentRelationshipStatus": null,"directParentReportingException": "NO_KNOWN_PERSON","ultimateParentLei": null,"ultimateParentName": null,"ultimateParentRelationshipStatus": null,"ultimateParentReportingException": "NO_KNOWN_PERSON","lastFilingAt": null,"sourceUrl": "https://search.gleif.org/#/record/54930043XZGB27CTOV49","apiUrl": "https://api.gleif.org/api/v1/lei-records/54930043XZGB27CTOV49","notice": "LEI data from GLEIF under CC0; this product is not affiliated with, endorsed or supplied by GLEIF or any LOU. SEC data from EDGAR (public domain). Not legal advice; verify before relying on it.","checkedAt": "2026-10-22T09:47:19Z"}
SEC row. identifiers.lei is attached only when a US GLEIF match in the same run has the same normalized legal name, and leiMatchedBy says so:
{"source": "sec","matchedBy": "query:Tesla, Inc.","name": "Tesla, Inc.","otherNames": ["TESLA MOTORS INC"],"identifiers": {"lei": "54930043XZGB27CTOV49","companyNumber": null,"registrationAuthorityId": null,"cik": "1318605","ticker": "TSLA","tickers": ["TSLA"],"exchanges": ["Nasdaq"],"ein": "912197729","leiMatchedBy": "same normalized legal name + US legal address (GLEIF row in this run)"},"status": "FILING","incorporationDate": null,"jurisdiction": "US-TX","registeredAddress": {"lines": ["1 TESLA ROAD"],"city": "AUSTIN","region": "TX","postalCode": "78725","country": "US","text": "1 TESLA ROAD, AUSTIN, TX, 78725"},"headquartersAddress": {"lines": ["1 TESLA ROAD"],"city": "AUSTIN","region": "TX","postalCode": "78725","country": "US","text": "1 TESLA ROAD, AUSTIN, TX, 78725"},"sic": ["3711"],"sicDescription": "Motor Vehicles & Passenger Car Bodies","stateOfIncorporation": "TX","entityType": "operating","category": "Large accelerated filer","fiscalYearEnd": "1231","phone": "512-516-8177","website": null,"lei": null,"lastFilingAt": "2026-10-21","lastFilingForm": "8-K","sourceUrl": "https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=1318605","apiUrl": "https://data.sec.gov/submissions/CIK0001318605.json","notice": "LEI data from GLEIF under CC0; this product is not affiliated with, endorsed or supplied by GLEIF or any LOU. SEC data from EDGAR (public domain). Not legal advice; verify before relying on it.","checkedAt": "2026-10-22T09:47:31Z"}
Price: $0.0004 per company row (event company) + $0.00005 per run start. You pay only for rows returned, and maxItems caps both rows and cost.
Limits (checkable):
- Name search uses GLEIF's legal-name ranking, so check
nameandjurisdictionbefore trusting a match. RaisematchesPerQueryto see more candidates. - The SEC name match covers only companies in SEC company_tickers.json (listed companies), by exact or prefix match on the normalized name.
statusfor GLEIF is the GLEIF entity status (ACTIVE/INACTIVE), with the LEI registration status inlei.registrationStatus(ISSUED, LAPSED…). For SEC it's FILING if any recent filing exists.- Parents come from GLEIF Level 2 relationship records (IS_DIRECTLY_CONSOLIDATED_BY / IS_ULTIMATELY_CONSOLIDATED_BY). If none are reported, you get the reporting-exception reason (for example NON_CONSOLIDATING or NO_KNOWN_PERSON). SEC rows carry the same parent fields as null.
- Rate limits: GLEIF ≤60 requests/min, SEC ≤5 requests/s, with a declared User-Agent.
includeParentsadds 2 to 4 GLEIF calls per row (fewer when the parent's name is already cached in the run), so the empty-input demo takes about 15 s.
Call it: POST https://api.apify.com/v2/acts/johto.data~company-kyb-verification/run-sync-get-dataset-items with Authorization: Bearer <APIFY_TOKEN> and the JSON input, or through Apify MCP.
Output fields
| Field | Type | Meaning |
|---|---|---|
source | string | gleif or sec |
matchedBy | string | The input that produced the row, e.g. lei:..., ticker:AAPL, query:Tesla, Inc. |
name, otherNames[] | string, array | Legal name and other or former names |
identifiers | object | lei, companyNumber, registrationAuthorityId, cik, ticker, tickers[], exchanges[], ein, bic, leiMatchedBy |
status | string | GLEIF entity status (ACTIVE/INACTIVE) or SEC FILING / NO_RECENT_FILINGS |
incorporationDate | string or null | GLEIF entity creation date |
jurisdiction, stateOfIncorporation | string or null | Jurisdiction code, US state for SEC rows |
registeredAddress, headquartersAddress | object or null | Company addresses as filed |
sic[], sicDescription | array, string | SEC industry code (SEC rows) |
directParentLei | string or null | LEI of the direct accounting-consolidation parent (GLEIF Level 2) |
directParentName | string or null | Legal name of the direct parent |
directParentRelationshipStatus | string or null | GLEIF relationship status, e.g. ACTIVE or INACTIVE |
directParentReportingException | string or null | Why no direct parent is reported, e.g. NO_KNOWN_PERSON, NON_CONSOLIDATING, NATURAL_PERSONS, NON_PUBLIC |
ultimateParentLei | string or null | LEI of the ultimate parent |
ultimateParentName | string or null | Legal name of the ultimate parent |
ultimateParentRelationshipStatus | string or null | GLEIF relationship status of the ultimate parent link |
ultimateParentReportingException | string or null | Why no ultimate parent is reported |
lei | object or null | GLEIF details: registrationStatus, entityStatus, legalFormCode, category, initialRegistrationDate, lastUpdateDate, nextRenewalDate, managingLou, corroborationLevel, parent{lei, name, country, relationshipType, relationshipStatus, reportingException, exceptionCategory}, ultimateParent{...} |
lastFilingAt, lastFilingForm | string or null | Latest SEC filing date and form (SEC rows) |
sourceUrl, apiUrl | string | Registry record links |
notice, checkedAt | string | Licence notice and check time |
Parent fields are company-level only. When GLEIF reports that a company has no parent entity (for example NATURAL_PERSONS), only the reason code is returned, never a person.
Data sources and licences
- GLEIF Global LEI Repository API (api.gleif.org). The data is CC0 (GLEIF LEI Data Terms of Use). This product is not affiliated with, endorsed or supplied by GLEIF or any LOU.
- SEC EDGAR (company_tickers.json and the submissions API). SEC EDGAR content is in the US public domain and is accessed under SEC fair-access rules.
- Not used: EU VIES (its terms forbid retransmission). UK Companies House is planned once an API key is set up.
This is not legal advice, and the source registries don't guarantee accuracy. Verify before relying on a result.