Skip to content

Contract Synchronization

The Chain Registry automatically synchronizes contract data from on-chain IntegraLedger registries to keep deployment information current.

The worker runs scheduled sync operations to:

  • Query IntegraLedger contracts on active chains
  • Update database with new contract deployments
  • Verify contract metadata and ABIs
  • Track deployment status and version changes

Administrators can trigger manual synchronization:

Terminal window
POST /v1/admin/sync-contracts

Optionally sync specific chains:

{
"chainId": 1
}

Synchronization operations return detailed metrics:

  • Contracts found on-chain
  • New contracts created in database
  • Contracts updated with new versions
  • Sync errors and warnings

The registry includes utilities for interacting with IntegraLedger contracts:

  • encodeGetAllContracts(): Query all registered contracts
  • encodeGetActiveContracts(): Query only active deployments
  • encodeGetContractInfo(name): Get specific contract details
  • decodeGetAllContractsResponse(data): Parse contract registry responses

Contract names from on-chain registries are mapped to categories:

  • Exact name matching for known contracts
  • Prefix matching for versioned contracts
  • Error handling for unmapped contract types