India Company Registry avatar

India Company Registry

Pricing

Pay per usage

Go to Apify Store
India Company Registry

India Company Registry

Official-source India company-master evidence with exact CIN lookup, explicit publisher-coverage metadata, LEI corroboration, change fingerprints, and hash-bound receipts. Supports supplier and KYB research; not a complete KYC or identity decision.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Bryan

Bryan

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

5

Monthly active users

21 hours ago

Last modified

Share

India Company Registry Evidence — CIN Change Monitoring

Version 0.9 turns an exact-CIN batch into a customer-owned portfolio refresh. Supply portfolioBaseline with accepted prior MCA, GLEIF, and RBI fingerprints. The Actor writes:

  • PORTFOLIO-REFRESH, with one explicit state and baseline action per requested CIN;
  • SOURCE-VINTAGE and SOURCE-VINTAGE.html, which keep fetch time, catalog update time, publisher coverage, GLEIF record dates, and RBI workbook as-of dates separate;
  • PORTFOLIO-EXPORT and spreadsheet-safe PORTFOLIO-EXPORT.csv; and
  • a conflict packet that holds the old customer baseline during a conflict, source outage, incomplete query, or no published match.

Only NEW_ACCEPTED, UNCHANGED_ACCEPTED, and CHANGED_ACCEPTED records advance the exported next baseline. A missing row is never called a deletion. Cross-source evidence changes remain visible, and CSV cells beginning with spreadsheet formula characters are neutralized. See ./ZH-CN-DEVELOPER.md for the Simplified-Chinese developer path.

Version 0.8 adds an optional exact-CIN cross-check against the Reserve Bank of India's dated registered NBFC/ARC workbook. Set includeRbiRegulatoryStatus to true to attach the registered entity type, official name, regional office, deposit-authorization field, classification, layer, workbook as-of date, source hash, and a separate RBI record fingerprint. The Actor intentionally discards the workbook's address and email columns.

The RBI result is one of exact_cin_match, no_exact_cin_match, or duplicate_exact_cin. No match means only that the CIN was not found in the dated registered-entity workbook. It is not proof that the company was never regulated, is not regulated under another regime, or had a Certificate of Registration cancelled. The cancelled-CoR workbook does not expose CINs, so the Actor never guesses a cancellation match by company name. Duplicate exact CINs and MCA/RBI legal-name conflicts route to manual review. If the official page, link, workbook bytes, XLSX signature, schema, or safety limits fail, the requested RBI enrichment fails closed and emits no MCA rows.

The RBI acquisition path performs ordinary session-aware navigation: it reads the official English listing page, verifies that page still links the pinned official workbook, then downloads the XLSX with the same cookie jar. It never solves or bypasses a CAPTCHA. The live regression preserves the workbook hash, parsed as-of date, row counts, malformed-CIN count, and exact-CIN receipt.

Version 0.7 adds a fail-closed source-freshness contract. Every official-source row and run receipt separates the Actor's observation time, the catalog's update date, the publisher-stated data coverage cutoff, and the date that metadata was checked. The current official catalog says monthly granularity and an update on 22 July 2026, but its own note says coverage only through 3 November 2023. The Actor therefore marks the publisher coverage note stale and never turns a recent fetch or catalog edit into a claim of live MCA status. The metadata check itself becomes explicitly due after 31 days.

Version 0.6 pins the current RoC-wise OGD resource and fails closed on invalid response envelopes, resource mismatches, premature pagination endings, and exhausted rate limits. Successful records carry a source_reliability object that identifies the key tier without exposing the key, observed rate-limit hits, and the pinned resource UUID. records_found, zero_match, rate_limited, and source_error are kept distinct in records or the failure receipt.

Version 0.5 adds customer-authorized structured evidence packets for directors, registered charges, and filings. Every packet requires an explicit lawful-use attestation, rights basis, retrieval time, source reference, and source-byte SHA-256. The Actor never fetches the reference, does not map or return contact details, never merges caller claims into official evidence, and always labels the material caller_provided_unverified. Official-source, derived-intelligence, and caller-evidence fingerprints remain separate.

Version 0.4 added a first-party intelligence contract without calling or copying a commercial MCA-data vendor. It calculates company age and paid-up-capital bands from the official master record, labels the evidence tier, compares exact-CIN GLEIF evidence for legal-name, jurisdiction, and active-status conflicts, and emits explicit manual-review reasons. These are transparent research signals, never automatic KYC, AML, credit, eligibility, or adverse decisions.

Every exact CIN or company-name lookup also writes DECISION-RESULTS, using the same decision vocabulary as the STR evidence workflow: EVIDENCE_FOUND, NO_PUBLISHED_MATCH, REVIEW_REQUIRED, SOURCE_UNAVAILABLE, or SCOPE_INCOMPLETE. A source failure is never converted into a no-match. Returned rows expose the decision, its deterministic reasons, and a receipt hash; these are evidence states, not automatic KYC, AML, credit, eligibility, or adverse decisions.

Every returned company also carries a versioned _cdf evidence envelope binding its CIN, canonical bounded query scope, official source receipt, observation time, integrity state, and fingerprint. MONITOR-SCOPE stores the exact canonical scope consumed by the portfolio watchlist engine. A baseline advances only for accepted official-source records; source warnings, manual-review records, and caller-provided unverified packets remain visible but fail closed instead of silently changing history.

Version 0.3 added exact bulk lookup for up to 5,000 CINs and registered names, adaptive pagination when OGD returns smaller pages than requested, transparent CIN decomposition (listing prefix, activity code, state code, incorporation year, ownership code, registration number), deterministic completeness and anomaly flags, and bounded concurrency.

The quality fields are evidence aids, not opaque “AI risk scores.” Every flag has a visible rule, every source request is sanitized, every record has a stable fingerprint, and every run has a recomputable receipt. This Actor does not claim director, charge, GST, PAN, filing, or financial-statement coverage because those fields are not in the selected official OGD resource. Lawful enrichment can be added only from an owner-approved public API or a caller-provided licensed source; protected MCA or third-party pages are not bypassed.

Official Ministry of Corporate Affairs company master data distributed through India's Open Government Data platform. This Actor adds a CIN-centered evidence and change layer without claiming that a periodic source snapshot is real-time MCA status.

The current official record endpoint is https://api.data.gov.in/resource/4dbe5667-7b6b-41d7-82af-211562424d9a. The catalog UUID is metadata, not the record endpoint. The runtime and regression suite pin this distinction because data.gov.in can change a catalog presentation without changing the resource contract in the same way.

What is different

Every company row includes:

  • entity_key anchored to the published CIN;
  • deterministic record_fingerprint over stable source content;
  • a _cdf receipt compatible with CivicDataForge portfolio snapshots and change monitoring;
  • change_type of uncompared, new, changed, or unchanged against caller-supplied prior CIN fingerprints;
  • exact official resource and sanitized request URLs, fetch time, query hash, and explicit source status; and
  • the original OGD record in raw.

When includeLei is enabled, the Actor accepts only an exact registeredAs CIN match. It then performs deterministic cross-source checks instead of silently merging conflicting claims. A conflict is preserved as evidence and routed to manual review; it is never averaged away or converted into an opaque risk score.

When includeRbiRegulatoryStatus is enabled, the Actor verifies the current workbook link on the official RBI NBFC page before parsing any bytes. Workbook cells that contain malformed CINs are never repaired or guessed. A small bounded anomaly count is fingerprinted in RBI-RECEIPT; exceeding the schema-quality threshold fails the run.

RUN-RECEIPT contains the source and query hashes, page count, matched pool, fetched and pushed counts, snapshot digest, source reliability, comparison counts, limitations, and a canonical receipt hash.

Query fields

Use exact server-side filters for cin, state, status, companyClass, category, and roc. The current resource stores CIN and company-name keys uppercase and state keys lowercase; the Actor normalizes those friendly inputs before building the exact filter. nameContains is applied within that filtered stream because the OGD endpoint does not provide a general substring operator. maxRecords bounds results from 1 to 50,000.

For reliable volume, supply a caller-owned free data.gov.in apiKey. It is secret input, is sent only to the official API, and is stripped from request evidence and output. Credential selection is bounded to three authorized tiers: caller input, the Actor's configured DATA_GOV_APIKEY, then the key published by data.gov.in's own public portal client. A retryable source or credential failure advances to the next distinct tier and restarts the query at offset zero, so a snapshot is never assembled across credential boundaries. The official portal fallback is appropriate for evaluation and small exact lookups, but it can be rate-limited and is not a volume service-level commitment. Success and failure receipts report the attempted tier names and fallback count without returning key material. If the source fails after any records have been read, the run emits no partial dataset; its failure receipt preserves the source status and machine-readable error code.

Change comparison

Pass prior receipt items:

{
"state": "Delhi",
"maxRecords": 100,
"previousFingerprints": [
{ "cin": "U00001DL2020PTC000001", "record_fingerprint": "sha256:..." }
],
"onlyChanges": true
}

The Actor compares only CINs returned by the current bounded query. It does not call missing CINs "removed" because a limit, changed filter, rate limit, or partial scan could create a false removal.

Exact-CIN portfolio refresh

{
"cins": ["L17110MH1973PLC019786"],
"includeLei": true,
"includeRbiRegulatoryStatus": true,
"maxConcurrency": 3,
"portfolioBaseline": [
{
"cin": "L17110MH1973PLC019786",
"company_name": "THE TATA POWER COMPANY LIMITED",
"record_fingerprint": "sha256:REPLACE_WITH_PRIOR_64_HEX_DIGEST"
}
]
}

The baseline is supplied and owned by the customer. The Actor does not retain it outside the Apify run storage selected by the customer. After review, save next_baseline from PORTFOLIO-REFRESH for the next run. Retain the old baseline for every item whose baseline_action is hold.

Interpretation boundaries

  • OGD is a periodic official master snapshot, not intraday MCA verification.
  • A changed fingerprint says published source content changed; it does not explain why.
  • A single query fails closed instead of returning partial data. In exact bulk mode, successful selectors can still be returned when other selectors fail; every row and the run receipt then say partial_error, with failed selectors enumerated for retry.
  • This is evidence for research, KYB, and monitoring—not an automatic KYC, AML, credit, eligibility, ownership, or legal-status decision.

Source attribution: Ministry of Corporate Affairs, Government of India, via data.gov.in. See the Government Open Data License — India. This Actor is not affiliated with or endorsed by the Government of India.

The enforceable acquisition boundary is documented in SOURCE-POLICY.md. The runtime test rejects commercial competitor dependencies and protected MCA portal endpoints. The independent expansion sequence and release gates are documented in OWNED-API-ROADMAP.md.