Full API Reference
Complete reference of all Hologram API methods. These are Go methods exposed to the frontend via Wails bindings. All methods returning map[string]interface{} follow the standard response format.
Browser Navigation
Navigate(scid string) map[string]interface{}
GoBack() map[string]interface{}
GoForward() map[string]interface{}
Reload() map[string]interface{}
FetchSCID(scid string) map[string]interface{}
FetchByDURL(durl string) map[string]interface{}
FetchTELAContent(scid string) map[string]interface{}
ServeTELAContent(scid string) map[string]interface{}Wallet Lifecycle
OpenWallet(filePath string, password string) map[string]interface{}
CloseWallet() map[string]interface{}
CreateWallet(filePath string, password string) map[string]interface{}
RestoreWallet(filePath string, password string, seed string) map[string]interface{}
SwitchWallet(filePath string, password string) map[string]interface{}
IsWalletOpen() bool
GetWalletStatus() map[string]interface{}
GetCurrentWalletPath() map[string]interface{}
SelectWalletFile() map[string]interface{}Wallet Balance & Sync
GetBalance() map[string]interface{}
GetBalanceAtHeight(scid string, topoheight int64, address string) map[string]interface{}
GetAddress() map[string]interface{}
SyncWallet() map[string]interface{}
GetWalletSyncStatus() map[string]interface{}Wallet Transfers
Transfer(destination string, amount uint64, paymentID string) map[string]interface{}
TransferToken(scid string, destination string, amount uint64, password string) map[string]interface{}
InternalWalletCall(method string, params string, password string) map[string]interface{}Transaction History
GetTransactionHistory(limit int) map[string]interface{}
GetTransactionBasic(txid string) map[string]interface{}
GetPersonalTransfers(limit int) map[string]interface{}
GetWalletMiningEarnings(limit int) map[string]interface{}
GetMiningEarningsSummary() map[string]interface{}Transaction Labels
SetTransactionLabel(txid string, label string) map[string]interface{}
GetTransactionLabel(txid string) map[string]interface{}
GetAllTransactionLabels() map[string]interface{}
DeleteTransactionLabel(txid string) map[string]interface{}
GenerateSemanticLabel(scid string, commitNum int) map[string]interface{}Integrated Addresses
GetIntegratedAddress(destinationPort uint64, comment string, amount uint64) map[string]interface{}
SplitIntegratedAddress(address string) map[string]interface{}
CreatePaymentRequest(amount uint64, comment string) map[string]interface{}
DecodeIntegratedAddress(addr string) map[string]interface{}Token Portfolio
GetTokenPortfolio() map[string]interface{}
GetTrackedTokens() map[string]interface{}
AddTrackedToken(scid string, name string, symbol string) map[string]interface{}
RemoveTrackedToken(scid string) map[string]interface{}Address Book
GetAddressBook() map[string]interface{}
AddContact(label string, address string, notes string) map[string]interface{}
UpdateContact(id string, label string, address string, notes string) map[string]interface{}
DeleteContact(id string) map[string]interface{}Wallet Security
GetSeedPhrase(password string) map[string]interface{}
GetWalletKeys(password string) map[string]interface{}
ChangeWalletPassword(currentPassword string, newPassword string) map[string]interface{}
SignMessage(message string) map[string]interface{}
VerifySignature(signedData string) map[string]interface{}Recent Wallets
GetRecentWalletsWithInfo() map[string]interface{}
ListRecentWallets() map[string]interface{}
RemoveRecentWallet(path string) map[string]interface{}
ClearRecentWallets() map[string]interface{}XSWD (dApp Integration)
// Client mode (connect to external wallet)
ConnectXSWD() map[string]interface{}
DisconnectXSWD() map[string]interface{}
CallXSWD(methodJSON string) map[string]interface{}
GetXSWDStatus() map[string]interface{}
// Server mode (internal wallet serves dApps)
ApproveWalletConnection() map[string]interface{}
RespondToXSWDRequest(requestID string, approved bool, password string) map[string]interface{}
RespondToXSWDRequestWithPermissions(requestID string, approved bool, password string, permissions string) map[string]interface{}
GetActiveXSWDConnections() map[string]interface{}
RevokeXSWDConnection(origin string) map[string]interface{}
GetConnectionLog(limit int) map[string]interface{}
ClearConnectionLog() map[string]interface{}
ExecuteSCViaXSWD(scid string, function string, args string) map[string]interface{}
// Events
SubscribeToBlockEvents() map[string]interface{}
SubscribeToWalletEvents() map[string]interface{}
UnsubscribeFromEvents() map[string]interface{}Connected Apps & Permissions
GetConnectedApps() map[string]interface{}
GetActiveConnections() map[string]interface{}
GetPermissionTypes() map[string]interface{}
GrantAppPermission(origin string, permission string, alwaysAsk bool) map[string]interface{}
RevokeAppPermissions(origin string) map[string]interface{}
RevokeAppPermission(origin string, permission string) map[string]interface{}Explorer - Blocks
GetBlock(height int64) map[string]interface{}
GetBlockByHash(hash string) map[string]interface{}
GetBlockExtended(heightOrHash string) map[string]interface{}
GetRecentBlocks(count int) map[string]interface{}
FormatBlockAge(timestampMs int64) map[string]interface{}
DaemonGetBlockHeaderByHeight(height int64) map[string]interface{}Explorer - Transactions
GetTransaction(txid string) map[string]interface{}
GetTransactionExtended(txid string) map[string]interface{}
GetTransactionWithRings(txid string) map[string]interface{}
GetCoinbaseMiner(txid string) map[string]interface{}
GetRingMembers(txid string) map[string]interface{}Explorer - Mempool
GetMempoolTransactions() map[string]interface{}
GetMempoolExtended(maxCount int) map[string]interface{}
GetMempoolStats() map[string]interface{}
DaemonGetTxPool() map[string]interface{}Explorer - Network
GetBlockchainStats() map[string]interface{}
GetNetworkInfo() map[string]interface{}
GetNetworkStats() map[string]interface{}
GetNetworkHealth() map[string]interface{}
GetLiveStats() map[string]interface{}
StartBlockMonitoring() map[string]interface{}
StopBlockMonitoring() map[string]interface{}Explorer - Smart Contracts
GetSCInfo(scid string) map[string]interface{}
GetSCCode(scid string) map[string]interface{}
GetSCVariables(scid string) map[string]interface{}
GetSCInteractionHistory(scid string) map[string]interface{}
DaemonGetSC(scid string) map[string]interface{}
GetRandomSmartContracts(count int) map[string]interface{}
GetAddressSCIDReferences(address string) map[string]interface{}
SearchAddress(address string) map[string]interface{}Smart Contract Interaction
ParseSCFunctions(scid string) map[string]interface{}
InvokeSCFunction(paramsJSON string) map[string]interface{}
InvokeSCFromExplorer(scid string, entrypoint string, args []map[string]interface{}, deposit uint64) map[string]interface{}
InstallSmartContract(code string, anonymous bool) map[string]interface{}
EstimateSCGas(scid string, entrypoint string, args []map[string]interface{}) map[string]interface{}
GetGasEstimate(paramsJSON string) map[string]interface{}Proof Validation
ValidatePayloadProofAmount(amount uint64) error
ValidatePayloadProofAmountWithContext(amount uint64) map[string]interface{}
DetectSuspiciousProofPatterns(amount uint64) []string
ValidateProof(proofJSON string) map[string]interface{}
ValidateProofFull(proofJSON string, address string) map[string]interface{}
ValidateSenderProof(txid string, address string, amount uint64, message string, signature string) map[string]interface{}Ratings System
RateTELAApp(scid string, rating int) map[string]interface{}
RateTELA(scid string, rating int) map[string]interface{}
LikeTELAApp(scid string) map[string]interface{}
DislikeTELAApp(scid string) map[string]interface{}
GetAppRating(scid string) map[string]interface{}
GetRatingDetails(scid string) map[string]interface{}
GetRatingsBreakdown(scid string) map[string]interface{}
GetRatingResultForSCID(scid string) map[string]interface{}
GetRatingCategories() map[string]interface{}
ParseRatingForUI(ratingJSON string) map[string]interface{}
BuildRating(categories string, overall int) map[string]interface{}
SubmitRatingWithPicker(scid string, categories string, overall int) map[string]interface{}NRS (Name Resolution)
ResolveDeroName(name string) map[string]interface{}
GetNameForAddress(address string) map[string]interface{}
GetNameSuggestions(prefix string) map[string]interface{}
GetNRSCacheStats() map[string]interface{}
GetAllCachedNames() map[string]interface{}Search & Discovery
OmniSearch(query string) map[string]interface{}
SearchApps(query string) map[string]interface{}
SearchByKey(key string) map[string]interface{}
SearchByValue(value string) map[string]interface{}
SearchCodeLine(pattern string) map[string]interface{}
SearchAddress(address string) map[string]interface{}
FilterSearchResults(filterJSON string) map[string]interface{}
AddSearchExclusion(filter string) map[string]interface{}
RemoveSearchExclusion(filter string) map[string]interface{}
GetSearchExclusions() map[string]interface{}
ClearSearchExclusions() map[string]interface{}
SetSearchMinLikes(percent int) map[string]interface{}Gnomon Indexer
StartGnomon() map[string]interface{}
StopGnomon() map[string]interface{}
GetGnomonStatus() map[string]interface{}
EnsureGnomonRunning() map[string]interface{}
SetGnomonAutostart(enabled bool) map[string]interface{}
GetGnomonAutostart() map[string]interface{}
ResyncGnomon() map[string]interface{}
ResyncGnomonFromHeight(height int64) map[string]interface{}
CleanGnomonDB(confirm bool) map[string]interface{}
GetDiscoveredApps() map[string]interface{}
GetAppDetails(scid string) map[string]interface{}Gnomon Tagging & Classification
GetAllTags() map[string]interface{}
GetSCIDsByTag(tag string) map[string]interface{}
GetTagStats() map[string]interface{}
GetAllClasses() map[string]interface{}
GetSCIDsByClass(class string) map[string]interface{}
GetSCIDMetadata(scid string) map[string]interface{}
GetTELAAppsWithTags() map[string]interface{}
RebuildTagIndex() map[string]interface{}Gnomon Historical Queries
GetSCChangeTimeline(scid string) map[string]interface{}
GetSCStateAtHeight(scid string, height uint64) map[string]interface{}
CompareSCStateAtHeights(scid string, from uint64, to uint64) map[string]interface{}
GetSCStateHistory(scid string) map[string]interface{}Gnomon WebSocket API
StartGnomonWSServer(address string) map[string]interface{}
StopGnomonWSServer() map[string]interface{}
GetGnomonWSStatus() map[string]interface{}Time Travel & SC Watching
CaptureSCState(scid string) map[string]interface{}
WatchSmartContract(scid string, name string) map[string]interface{}
UnwatchSmartContract(scid string) map[string]interface{}
GetWatchedSmartContracts() map[string]interface{}
RefreshWatchedSCs() map[string]interface{}Developer Support (EPOCH)
SetDevSupportEnabled(enabled bool) map[string]interface{}
IsDevSupportEnabled() bool
GetDevSupportStatus() map[string]interface{}
GetDevSupportStats() map[string]interface{}
SetEpochEnabled(enabled bool) map[string]interface{}
IsEpochEnabled() bool
IsEpochActive() bool
GetEpochStats() map[string]interface{}
SetEpochConfig(maxHashes int, maxThreads int) map[string]interface{}
HandleEpochRequest(hashes int, appSCID string) map[string]interface{}
InitializeEpoch() map[string]interface{}
ShutdownEpoch() map[string]interface{}
GetEpochAddressInfo() map[string]interface{}
GetEpochSupportingApps() map[string]interface{}
StartEpochAddressMonitor() map[string]interface{}
CheckAppSupportsEpoch(scid string) map[string]interface{}Offline Cache
PrefetchApp(scid string) map[string]interface{}
GetCachedApps() map[string]interface{}
IsAppCachedOffline(scid string) map[string]interface{}
RemoveCachedApp(scid string) map[string]interface{}
UpdateCachedApp(scid string) map[string]interface{}
GetOfflineCacheStats() map[string]interface{}
ClearOfflineCache() map[string]interface{}
SetOfflineCacheEnabled(enabled bool) map[string]interface{}
BatchPrefetchFavorites(favorites []map[string]interface{}, minRating int) map[string]interface{}
CheckAppForUpdate(scid string) map[string]interface{}
CheckAllForUpdates() map[string]interface{}
DiffCachedVsOnChain(scid string) map[string]interface{}Studio - Local Dev Server
StartLocalDevServer(directory string) map[string]interface{}
StopLocalDevServer() map[string]interface{}
GetLocalDevServerStatus() map[string]interface{}
RefreshLocalDevServer() map[string]interface{}Studio - Deployment
DeployTELABatch(configJSON string) map[string]interface{}
ParseFolderForTELA(directory string) map[string]interface{}
EstimateBatchGas(configJSON string) map[string]interface{}
CheckBalanceForBatchDeployment(fileCount int, hasGzip bool, hasMods bool) map[string]interface{}
DetectDocTypes(directory string) map[string]interface{}
GetAvailableDOCTypes() map[string]interface{}Studio - INDEX & DOC Management
GetINDEXInfo(scid string) map[string]interface{}
InstallINDEX(configJSON string) map[string]interface{}
UpdateINDEX(scid string, configJSON string) map[string]interface{}
InstallDOC(configJSON string) map[string]interface{}
PreviewDOC(configJSON string) map[string]interface{}Studio - MODs
GetAllMODClasses() map[string]interface{}
GetMODInfo(modTag string) map[string]interface{}
GetMODsByClass(class string) map[string]interface{}
GetMODsList() map[string]interface{}
PrepareMODInstall(scid string, modTags string) map[string]interface{}Studio - Version Control
GetCommitHistory(scid string) map[string]interface{}
GetCommitHistoryWithLabels(scid string) map[string]interface{}
GetCommitContent(scid string, commitNum int) map[string]interface{}
DiffCommits(scid string, fromCommit int, toCommit int) map[string]interface{}
DiffFiles(contentA string, contentB string) map[string]interface{}
DiffSCIDs(scidA string, scidB string) map[string]interface{}
CloneTELA(scid string, directory string) map[string]interface{}
GetClonePath() map[string]interface{}Studio - My Content
SearchMyContent() map[string]interface{}
SearchMyINDEXes() map[string]interface{}
SearchMyDOCs(docType string) map[string]interface{}Studio - DocShards
ShardFile(filePath string, compress bool) map[string]interface{}
ConstructFromShards(shardPath string) map[string]interface{}Studio - Libraries
GetTELALibraries() map[string]interface{}Simulator
StartSimulatorMode() map[string]interface{}
StopSimulatorMode() map[string]interface{}
GetSimulatorStatus() map[string]interface{}
IsSimulatorReady() map[string]interface{}
ResetSimulator() map[string]interface{}
IsInSimulatorMode() bool
GetSimulatorDeploymentInfo() map[string]interface{}
GetSimulatorWalletStatus() map[string]interface{}
GetSimulatorWalletInfo() map[string]interface{}
IsSimulatorWalletRegistered() map[string]interface{}
UseSimulatorWallet() map[string]interface{}
DeployToSimulator(code string) map[string]interface{}
PreviewTELAApp(appJSON string) map[string]interface{}
QuickDeployFile(name string, content string, docType string) map[string]interface{}
BatchDeployToSimulator(codesJSON string) map[string]interface{}
EstimateSimulatorGas(docJSON string) map[string]interface{}Simulator - Test Wallets
GetSimulatorTestWallets() map[string]interface{}
GetSimulatorTestWallet(walletId int) map[string]interface{}
SyncSimulatorTestWallets() map[string]interface{}
OpenSimulatorTestWallet(walletId int) map[string]interface{}
FundTestWallet(walletId int, amount uint64) map[string]interface{}
RefreshTestWalletBalance(walletId int) map[string]interface{}Node Management
StartNode(config map[string]interface{}) map[string]interface{}
StartNodeWithNetwork(config map[string]interface{}, network string) map[string]interface{}
StopNode() map[string]interface{}
GetNodeStatus() map[string]interface{}
GetNodeConfig() map[string]interface{}
SetNodeConfig(configJSON string) map[string]interface{}
GetNodeAdvancedConfig() map[string]interface{}
SetNodeAdvancedConfig(fastSync bool, pruneHistory int, extraArgs string) map[string]interface{}
SetNodePorts(rpcPort int, p2pPort int) map[string]interface{}
GetNodeLogs(limit int) map[string]interface{}
DetectRunningNode() map[string]interface{}
DetectExistingBlockchain() map[string]interface{}
CheckDerodStatus() map[string]interface{}
TestAndConnectEndpoint(endpoint string) map[string]interface{}
GetSyncProgress() map[string]interface{}
EstimateSyncTime() map[string]interface{}Network & Mode
SetNetworkMode(mode string) map[string]interface{}
GetNetworkMode() map[string]interface{}
GetAvailableNetworks() map[string]interface{}
GetNetworkFilterStatus() map[string]interface{}TELA Server Management
ListActiveServers() map[string]interface{}
ShutdownServer(name string) map[string]interface{}
ShutdownAllServers() map[string]interface{}
ShutdownTELAServers() map[string]interface{}
ShutdownLocalServers() map[string]interface{}
ServeLocalDirectory(directory string) map[string]interface{}
SetMaxServers(count int) map[string]interface{}
SetServerPortStart(port int) map[string]interface{}
GetServerPortRange() map[string]interface{}
GetServerInfo(name string) map[string]interface{}Content Filtering & Safe Browsing
GetContentFilterConfig() map[string]interface{}
SetContentFilterConfig(enabled bool, minRating int, blockMalware bool, showNSFW bool, customRules string, autoBlock bool, maxAge int, strictMode bool) map[string]interface{}
GetContentFilterRules() map[string]interface{}
GetContentFilterHistory(limit int) map[string]interface{}
GetContentFilterStats() map[string]interface{}
CheckAppFilter(scid string, name string, desc string, rating int, tags string, owner string, code string) map[string]interface{}
ManuallyAllowApp(scid string) map[string]interface{}
ManuallyBlockApp(scid string) map[string]interface{}
ClearAppFilterOverride(scid string) map[string]interface{}
IsRequestAllowed(url string) map[string]interface{}Privacy Mode
AddAllowedHost(host string) map[string]interface{}
RemoveAllowedHost(host string) map[string]interface{}
GetCypherpunkMode() map[string]interface{}
SetCypherpunkMode(enabled bool) map[string]interface{}
RequestInterceptor(url string) map[string]interface{}Settings
GetSetting(key string) map[string]interface{}
GetAllSettings() map[string]interface{}
SetSetting(settingsJSON string) map[string]interface{}
GetHistory() map[string]interface{}
ClearHistory() map[string]interface{}
GetAppInfo() map[string]interface{}Console
GetConsoleLogs() map[string]interface{}
ClearConsoleLogs() map[string]interface{}File Operations
SelectFile() map[string]interface{}
SelectFiles() map[string]interface{}
SelectFolder() map[string]interface{}
ListDirectory(path string) map[string]interface{}
GetFileInfo(path string) map[string]interface{}
ScanFolder(path string) map[string]interface{}
GetMetadataFiles(folderPath string) map[string]interface{}
GenerateSubDirs(basePath string, name string) map[string]interface{}
MoveFile(source string, destination string) map[string]interface{}
RemoveFile(path string) map[string]interface{}
SaveFileWithDialog(filename string, content string, title string, defaultDir string) map[string]interface{}
SaveBinaryFileWithDialog(filename string, base64Data string, title string, defaultDir string) map[string]interface{}Graviton Storage
SetVar(bucket string, key string, value string) map[string]interface{}
DeleteVar(bucket string, key string) map[string]interface{}Status Broadcast
StartStatusBroadcast() map[string]interface{}Events
Hologram emits these events to the frontend:
| Event | Description |
|---|---|
status:update | 5-second status broadcast (node, wallet, gnomon) |
localdev:reload | File changed in local dev server |
xswd:connection | XSWD connection state changed |
wallet:balance | Wallet balance updated |
wallet:daemon_connection_warning | Wallet lost daemon connection |
xswd:server_error | XSWD server encountered an error |
gnomon:progress | Gnomon indexing progress |
Response Format
All API methods return a map with standard fields:
{
"success": bool, // Operation succeeded
"error": string, // Error message if success=false
// Plus method-specific fields
}Unit Test Coverage
| Test File | Coverage Area |
|---|---|
wallet_test.go | Wallet operations |
tela_service_test.go | TELA content assembly |
daemon_client_test.go | RPC client |
blockchain_test.go | TELA assembly, gzip |
xswd_permissions_test.go | Permission types, persistence |
search_service_test.go | Search and filtering |
gnomon_features_test.go | Gnomon feature tests |
cache_optimizer_test.go | LRU cache, eviction |
xswd_server_test.go | JSON-RPC protocol |
rating_system_test.go | App rating system |
gnomon_test.go | Indexer operations |
epoch_handler_test.go | EPOCH requests, rate limiting |
Run tests:
cd /path/to/HOLOGRAM
go test -v -count=1 # Run all tests
go test -bench=. -benchmem # Run benchmarks