Helpers & monitoring

Health Checks and Job Monitoring

Health checks in Taurus-PROTECT

Any of our components are exposing Health checks through the same API endpoint: /api/rest/v1/health/all?tenantId=1

List of Taurus-PROTECT component names that produce health checks:

  • validatord
  • vaultd
  • hsm
  • blocksd
  • gated

Jobs perform component health checks and produce health reports accessible at /api/rest/v1/health/[component]/[check]. This is accessible without authentication so we must be careful with what we expose.

[component] can be replaced with values that you get from the “all” health checks.

For any of these endpoints, you can get those common values:

  • "tenantId": is the tenant where health check was run against
  • "componentName": name of the component
  • "componentId": uinque ID for the component (can be retrieved from the logs)
  • "group": group to whom the healthcheck belongs to
  • "healthCheck": type of health check
  • "status": status of the executed call
  • "report":
    • "name": group name
    • "status": status of the executed call
    • “duration": duration of the call
  • "lastUpdateDate": when was the health check executed
  • "validUntilDate": until when this health check will be valid.

How to setup

Make sure baseUrl is a variable pointing to your validator instance, example:

export baseUrl='https://your-protect-instance.example.com'

Get Explorers health checks

Description : Performs an health check on the connectivity between validatord and blocksd.

curl --location "$baseUrl/api/rest/v1/health/blocksd/connectivity" \

{
    "health": {
        "tenantId": "1",
        "componentName": "tg-validatord",
        "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
        "group": "blocksd",
        "healthCheck": "connectivity",
        "status": "success",
        "report": {
            "name": "connectivity",
            "status": "success",
            "duration": "142.609264ms"
        },
        "lastUpdateDate": "2024-09-19T14:26:23.683065Z",
        "validUntilDate": "2024-09-19T14:32:23.683065Z"
    }
}

Get health checks list by tenant

Description : Performs a complete health check on validatord.

curl --location "$baseUrl/api/rest/v1/health/all?tenantId=1" \

{
    "components": {
        "1ae1e60d-031f-4e0d-bdb3-e19652186051": {
            "groups": {
                "cryptocompare": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "1ae1e60d-031f-4e0d-bdb3-e19652186051",
                            "group": "cryptocompare",
                            "healthCheck": "getcoins",
                            "status": "success",
                            "report": {
                                "name": "getcoins",
                                "status": "success",
                                "duration": "2.65891188s"
                            },
                            "lastUpdateDate": "2024-09-19T13:16:40.406863Z",
                            "validUntilDate": "2024-09-19T14:46:40.406863Z"
                        }
                    ]
                },
                "scoreproviders": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "1ae1e60d-031f-4e0d-bdb3-e19652186051",
                            "group": "scoreproviders",
                            "healthCheck": "connectivity",
                            "status": "success",
                            "report": {
                                "name": "connectivity",
                                "status": "success",
                                "duration": "225.54874ms",
                                "results": {
                                    "chainalysis": "success",
                                    "elliptic": "success"
                                }
                            },
                            "lastUpdateDate": "2024-09-19T13:46:19.123976Z",
                            "validUntilDate": "2024-09-19T14:31:19.123976Z"
                        }
                    ]
                }
            }
        },
        "361de24b-5f25-4d3f-ac20-5216fc330c5e": {
            "groups": {
                "blocksd": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "blocksd",
                            "healthCheck": "connectivity",
                            "status": "success",
                            "report": {
                                "name": "connectivity",
                                "status": "success",
                                "duration": "166.213736ms"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.912016Z",
                            "validUntilDate": "2024-09-19T14:27:24.912016Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "blocksd",
                            "healthCheck": "getbalance",
                            "status": "success",
                            "report": {
                                "name": "getbalance",
                                "status": "success",
                                "duration": "13.052895501s",
                                "results": {
                                    "ADA": "success",
                                    "ALGO": "success",
                                    "ATOM": "success",
                                    "BCH": "success",
                                    "BTC": "success",
                                    "DOT": "success",
                                    "ETH": "success",
                                    "FTM": "success",
                                    "LTC": "success",
                                    "POL": "success",
                                    "SOL": "success",
                                    "XKI": "success",
                                    "XLM": "success",
                                    "XRP": "success",
                                    "XTZ": "success"
                                }
                            },
                            "lastUpdateDate": "2024-09-19T14:21:57.677545Z",
                            "validUntilDate": "2024-09-19T14:27:57.677545Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "blocksd",
                            "healthCheck": "getfees",
                            "status": "success",
                            "report": {
                                "name": "getfees",
                                "status": "success",
                                "duration": "269.911029ms",
                                "results": {
                                    "ADA": "success",
                                    "AvalancheC": "success",
                                    "BCH": "success",
                                    "BTC": "success",
                                    "ETH": "success",
                                    "FTM": "success",
                                    "ICP": "success",
                                    "LTC": "success",
                                    "NEAR": "success",
                                    "Polygon": "success",
                                    "XLM": "success",
                                    "XRP": "success"
                                }
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.509285Z",
                            "validUntilDate": "2024-09-19T14:27:24.509285Z"
                        }
                    ]
                },
                "database": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "database",
                            "healthCheck": "connectivity",
                            "status": "success",
                            "report": {
                                "name": "connectivity",
                                "status": "success",
                                "duration": "107.516581ms"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:23.545536Z",
                            "validUntilDate": "2024-09-19T14:27:23.545536Z"
                        }
                    ]
                },
                "exchanges": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "exchanges",
                            "healthCheck": "connectivity",
                            "status": "success",
                            "report": {
                                "name": "connectivity",
                                "status": "success",
                                "duration": "8.265041766s",
                                "results": {
                                    "binance": "success",
                                    "bitfinex": "success",
                                    "bitfinex-kp": "success",
                                    "bitstamp": "success",
                                    "coinbase": "success",
                                    "coinbase-prime-institutional-cockroach": "success",
                                    "coinbase-pro": "success",
                                    "huobi-af": "success",
                                    "kraken": "success",
                                    "kraken-jdr": "success",
                                    "tdx-int": "success",
                                    "woorton-uat": "success"
                                }
                            },
                            "lastUpdateDate": "2024-09-19T14:21:32.914822Z",
                            "validUntilDate": "2024-09-19T14:27:32.914822Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "exchanges",
                            "healthCheck": "getbalances",
                            "status": "failure",
                            "report": {
                                "name": "getbalances",
                                "status": "failure",
                                "duration": "30.00333571s",
                                "results": {
                                    "binance": "success",
                                    "bitfinex": "success",
                                    "bitfinex-kp": "success",
                                    "bitstamp": "success",
                                    "coinbase": "success",
                                    "coinbase-prime-institutional-cockroach": "success",
                                    "coinbase-pro": "unable to get balances for exchange coinbase-pro: unable to create signature: unable to process signed request from tg-vaultd: unable to ProcessSignedRequest from Vaultd: failed to get vaultd client: no available healthy client",
                                    "huobi-af": "success",
                                    "kraken": "success",
                                    "kraken-jdr": "success",
                                    "tdx-int": "success",
                                    "woorton-uat": "success"
                                }
                            },
                            "lastUpdateDate": "2024-09-19T14:21:54.026396Z",
                            "validUntilDate": "2024-09-19T14:27:54.026396Z"
                        }
                    ]
                },
                "gated": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "gated",
                            "healthCheck": "connectivity",
                            "status": "success",
                            "report": {
                                "name": "connectivity",
                                "status": "success",
                                "duration": "6.173706ms"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.652932Z",
                            "validUntilDate": "2024-09-19T14:27:24.652932Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "gated",
                            "healthCheck": "proxy",
                            "status": "success",
                            "report": {
                                "name": "proxy",
                                "status": "success",
                                "duration": "162.53047ms"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:25.729091Z",
                            "validUntilDate": "2024-09-19T14:27:25.729091Z"
                        }
                    ]
                },
                "hsm": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "hsm",
                            "healthCheck": "status",
                            "status": "success",
                            "report": {
                                "name": "status",
                                "status": "success",
                                "duration": "858.526µs"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.479556Z",
                            "validUntilDate": "2024-09-19T14:27:24.479556Z"
                        }
                    ]
                },
                "jobs": {
                    "healthChecks": [
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "jobs",
                            "healthCheck": "addresscreation",
                            "status": "success",
                            "report": {
                                "name": "addresscreation",
                                "status": "success",
                                "duration": "0s"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.623743Z",
                            "validUntilDate": "2024-09-19T14:41:24.623743Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "jobs",
                            "healthCheck": "scorerefresh",
                            "status": "success",
                            "report": {
                                "name": "scorerefresh",
                                "status": "success",
                                "duration": "0s"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.170229Z",
                            "validUntilDate": "2024-09-19T14:41:24.170229Z"
                        },
                        {
                            "tenantId": "1",
                            "componentName": "tg-validatord",
                            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
                            "group": "jobs",
                            "healthCheck": "webhooks",
                            "status": "success",
                            "report": {
                                "name": "webhooks",
                                "status": "success",
                                "duration": "0s"
                            },
                            "lastUpdateDate": "2024-09-19T14:21:24.659625Z",
                            "validUntilDate": "2024-09-19T14:41:24.659625Z"
                        }
                    ]
                }
            }
        }
    }
}

Get health checks for a specific group

Description: Performs a health check on a specific group of monitored activities.

Example with gated group:

curl --location "$baseUrl/api/rest/v1/health/gated?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "gated",
            "healthCheck": "connectivity",
            "status": "success",
            "report": {
                "name": "connectivity",
                "status": "success",
                "duration": "3.19926ms"
            },
            "lastUpdateDate": "2024-09-19T14:31:24.189337Z",
            "validUntilDate": "2024-09-19T14:37:24.189337Z"
        },
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "gated",
            "healthCheck": "proxy",
            "status": "success",
            "report": {
                "name": "proxy",
                "status": "success",
                "duration": "34.785155ms"
            },
            "lastUpdateDate": "2024-09-19T14:31:24.282304Z",
            "validUntilDate": "2024-09-19T14:37:24.282304Z"
        }
    ]
}

Get Explorers Balances health checks by tenant

Description : Performs a health check by getting balances from blocksd. Results will give you the list of currencies where a balance has been returned.

curl --location "$baseUrl/api/rest/v1/health/blocksd/getbalance?tenantId=1" \

{
    "health": {
        "tenantId": "1",
        "componentName": "tg-validatord",
        "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
        "group": "blocksd",
        "healthCheck": "getbalance",
        "status": "success",
        "report": {
            "name": "getbalance",
            "status": "success",
            "duration": "11.55563498s",
            "results": {
                "ADA": "success",
                "ALGO": "success",
                "ATOM": "success",
                "BCH": "success",
                "BTC": "success",
                "DOT": "success",
                "ETH": "success",
                "FTM": "success",
                "LTC": "success",
                "POL": "success",
                "SOL": "success",
                "XKI": "success",
                "XLM": "success",
                "XRP": "success",
                "XTZ": "success"
            }
        },
        "lastUpdateDate": "2024-09-19T14:26:43.820648Z",
        "validUntilDate": "2024-09-19T14:32:43.820648Z"
    }
}

Get Explorers Fees health checks by tenant

Description : Performs a health check by getting Blockchains current fees from blocksd. Results will give you the list of currencies where a fee has been returned.

curl --location "$baseUrl/api/rest/v1/health/blocksd/getfees?tenantId=1" \

{
    "health": {
        "tenantId": "1",
        "componentName": "tg-validatord",
        "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
        "group": "blocksd",
        "healthCheck": "getfees",
        "status": "success",
        "report": {
            "name": "getfees",
            "status": "success",
            "duration": "170.343854ms",
            "results": {
                "ADA": "success",
                "AvalancheC": "success",
                "BCH": "success",
                "BTC": "success",
                "ETH": "success",
                "FTM": "success",
                "ICP": "success",
                "LTC": "success",
                "NEAR": "success",
                "Polygon": "success",
                "XLM": "success",
                "XRP": "success"
            }
        },
        "lastUpdateDate": "2024-09-19T14:26:26.608262Z",
        "validUntilDate": "2024-09-19T14:32:26.608262Z"
    }
}

Get Database health checks by tenant

Description : Performs a health check by checking database connectivity between validatord and the database engine you are currently using.

curl --location "$baseUrl/api/rest/v1/health/database?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "database",
            "healthCheck": "connectivity",
            "status": "success",
            "report": {
                "name": "connectivity",
                "status": "success",
                "duration": "4.324687ms"
            },
            "lastUpdateDate": "2024-09-19T14:46:25.600599Z",
            "validUntilDate": "2024-09-19T14:52:25.600599Z"
        }
    ]
}

Get Prices health checks by tenant

Description : Performs a health check between validatord and prices providers you are currently using. Example here with Cryptocompare.

curl --location "$baseUrl/api/rest/v1/health/database?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "2861035f-a361-47b6-b02f-14566d3106a5",
            "group": "cryptocompare",
            "healthCheck": "getcoins",
            "status": "success",
            "report": {
                "name": "getcoins",
                "status": "success",
                "duration": "3.473873505s"
            },
            "lastUpdateDate": "2024-09-30T11:24:35.705457Z",
            "validUntilDate": "2024-09-30T12:54:35.705457Z"
        }
    ]
}

Get Score Providers health checks by tenant

Description : Performs a health check between validatord and KYC/KYT scoring providers you are currently using. Example here with Chainalysis and Elliptic.

curl --location "$baseUrl/api/rest/v1/health/scoreproviders?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "scoreproviders",
            "healthCheck": "connectivity",
            "status": "success",
            "report": {
                "name": "connectivity",
                "status": "success",
                "duration": "219.606381ms",
                "results": {
                    "chainalysis": "success",
                    "elliptic": "success"
                }
            },
            "lastUpdateDate": "2024-09-19T14:36:25.103681Z",
            "validUntilDate": "2024-09-19T15:21:25.103681Z"
        }
    ]
} 

Get Gated health checks by tenant

Description : Performs a health check on the connectivity between validatord and gated (proxy).

curl --location "$baseUrl/api/rest/v1/health/gated?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "gated",
            "healthCheck": "connectivity",
            "status": "success",
            "report": {
                "name": "connectivity",
                "status": "success",
                "duration": "5.667154ms"
            },
            "lastUpdateDate": "2024-09-19T14:51:27.017460Z",
            "validUntilDate": "2024-09-19T14:57:27.017460Z"
        },
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "gated",
            "healthCheck": "proxy",
            "status": "success",
            "report": {
                "name": "proxy",
                "status": "success",
                "duration": "49.921336ms"
            },
            "lastUpdateDate": "2024-09-19T14:51:27.680519Z",
            "validUntilDate": "2024-09-19T14:57:27.680519Z"
        }
    ]
}

Get HSM health checks by tenant

Description : Performs a health check on the connectivity between validatord and hsm.

curl --location "$baseUrl/api/rest/v1/health/hsm?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "hsm",
            "healthCheck": "status",
            "status": "success",
            "report": {
                "name": "status",
                "status": "success",
                "duration": "765.692µs"
            },
            "lastUpdateDate": "2024-09-19T14:51:25.788486Z",
            "validUntilDate": "2024-09-19T14:57:25.788486Z"
        }
    ]
}

Get vaultd health checks by tenant

curl --location "$baseUrl/api/rest/v1/health/hsm?tenantId=1" \

Jobs API specific health checks

Get Jobs health checks by tenant

curl --location "$baseUrl/api/rest/v1/health/jobs?tenantId=1" \

{
    "healths": [
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "jobs",
            "healthCheck": "addresscreation",
            "status": "success",
            "report": {
                "name": "addresscreation",
                "status": "success",
                "duration": "0s"
            },
            "lastUpdateDate": "2024-09-19T14:51:25.681248Z",
            "validUntilDate": "2024-09-19T15:11:25.681248Z"
        },
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "jobs",
            "healthCheck": "scorerefresh",
            "status": "success",
            "report": {
                "name": "scorerefresh",
                "status": "success",
                "duration": "0s"
            },
            "lastUpdateDate": "2024-09-19T14:51:27.051554Z",
            "validUntilDate": "2024-09-19T15:11:27.051554Z"
        },
        {
            "tenantId": "1",
            "componentName": "tg-validatord",
            "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
            "group": "jobs",
            "healthCheck": "webhooks",
            "status": "success",
            "report": {
                "name": "webhooks",
                "status": "success",
                "duration": "0s"
            },
            "lastUpdateDate": "2024-09-19T14:51:27.223038Z",
            "validUntilDate": "2024-09-19T15:11:27.223038Z"
        }
    ]
}

Some job names examples:

  • Actions:

action_service_running-actions-handler,

action_service_sleeping-actions-handler

  • Audit

audit_service_trails-ingestor

  • Balance:

balance_service_balances-desync-checker
balance_service_balances-garbage-collector
balance_service_balances-history-garbage-collector
balance_service_balances-history-refresher
balance_service_balances-refresher
balance_service_existential-balance-updates-processor
balance_service_funds-releaser
balance_service_rebase-token-balances-refresher

  • Change service:

change_service_email-event-task-handler

  • Events:

event_service_auto-transfer-events-task-handler
event_service_initialized-auto-transfer-request-handler
event_service_pending-auto-transfer-request-handler
event_service_triggered-auto-transfer-events-handler
eventbus_service_event-dispatcher
eventbus_service_event-sequencer

  • Exchanges:

exchange_service_exchanges-balances-handler

  • Prices:

price_service_price-history-refresher
price_service_price-refresher

  • Requests:

request_service_action-auto-prepared-2-requests-handler
request_service_action-prepared-requests-handler
request_service_approved-2-requests-handler
request_service_approved-request-bundles-handler
request_service_approved-requests-handler
request_service_broadcasting-2-requests-handler
request_service_broadcasting-request-bundles-handler
request_service_broadcasting-requests-handler
request_service_bundle-approved-requests-handler
request_service_canceled-signed-requests-handler
request_service_created-request-bundles-handler
request_service_creating-request-bundles-handler
request_service_creating-requests-handler
request_service_diem-burn-broadcasted-requests-handler
request_service_diem-mbs-approved-requests-handler
request_service_diem-mbs-completed-requests-handler
request_service_diem-mbs-pending-requests-handler
request_service_dot-extrinsics-garbage-collector
request_service_dot-extrinsics-refresher
request_service_expired-requests-handler
request_service_expired-to-cancel-signed-requests-handler
request_service_failed-request-bundles-handler
request_service_fast-approved-2-requests-handler
request_service_fast-approved-requests-handler
request_service_funds-releaser
request_service_hsmfailed-2-requests-handler
request_service_hsmfailed-requests-handler
request_service_hsmready-2-requests-handler
request_service_hsmready-request-bundles-handler
request_service_hsmready-requests-handler
request_service_hsmsigned-2-requests-handler
request_service_hsmsigned-request-bundles-handler
request_service_hsmsigned-requests-handler
request_service_invalid-signed-requests-handler
request_service_new-signed-requests-handler
request_service_opt-ins-releaser
request_service_pending-requests-handler
request_service_pending-signed-requests-handler
request_service_ready-requests-handler
request_service_replaced-signed-requests-handler
request_service_timeout-signed-requests-handler
request_service_verified-request-batch-signatures-handler

  • Staking:

staking_service_active-icp-neurons-refresher
staking_service_ada-staking-addresses-refresher
staking_service_ada-staking-rewards-refresher
staking_service_cosmoshub-staking-rewards-refresher
staking_service_cosmoskichain-staking-rewards-refresher
staking_service_disbursing-icp-neurons-handler
staking_service_dissolved-icp-neurons-handler
staking_service_dot-staking-withdraw-unbonded-handler
staking_service_ftm-staking-addresses-refresher
staking_service_icp-balance-activity-handler
staking_service_icp-neurons-creator
staking_service_icp-staking-activity-handler
staking_service_merging-icp-neurons-handler
staking_service_near-staking-rewards-refresher
staking_service_new-icp-neurons-handler
staking_service_observing-icp-neurons-handler
staking_service_sol-staking-info-refresher
staking_service_spawning-icp-neurons-handler
staking_service_staking-states-collection-refresher
staking_service_xtz-delegate-addresses-refresher

  • Transactions:

transaction_service_mig-hasanytransactionattribute
transaction_service_network-migrater
transaction_service_observed-transactions-handler
transaction_service_populate-transaction-balance
transaction_service_token-balances-garbage-collector
transaction_service_token-balances-refresher
transaction_service_token-holders-populator
transaction_service_transactions-exporter

  • Wallets:

wallet_service_ada-staking-addresses-refresher
wallet_service_addresses-nft-migrater
wallet_service_algo-optin-status-refresher
wallet_service_balances-history-refresher
wallet_service_balances-refresher
wallet_service_created-addresses-handler
wallet_service_currency-wallets-businessrules-creator
wallet_service_network-migrater
wallet_service_nonces-refresher
wallet_service_observed-addresses-handler
wallet_service_signed-addresses-handler
wallet_service_token-wallets-syncer
wallet_service_xlm-address-flags-refresher
wallet_service_xlm-existentialbalance-refresher
wallet_service_xlm-trustline-refresher
wallet_service_xtz-delegate-addresses-refresher
wallet_service_xtz-initializing-addresses-handler
wallet_service_xtz-ready-for-init-addresses-handler
wallet_service_xtz-revelation-status-refresher
wallet_service_xtz-uninitialized-addresses-handler

  • Webhooks:

webhook_service_webhook_caller
webhook_service_webhook_event_handler

  • Whitelists:

whitelist_service_network-migrater
whitelist_service_verified-wladdress-batch-signatures-handler

Get Job health checks by Job name and by tenant

Description : Returns computed statistics for a single job.

curl --location "$baseUrl/api/rest/v1/health/jobs/scorerefresh?tenantId=1" \

{
    "health": {
        "tenantId": "1",
        "componentName": "tg-validatord",
        "componentId": "361de24b-5f25-4d3f-ac20-5216fc330c5e",
        "group": "jobs",
        "healthCheck": "scorerefresh",
        "status": "success",
        "report": {
            "name": "scorerefresh",
            "status": "success",
            "duration": "0s"
        },
        "lastUpdateDate": "2024-09-19T14:51:27.051554Z",
        "validUntilDate": "2024-09-19T15:11:27.051554Z"
    }
}

Get Jobs list

This endpoint requires authentication as the technical user.

Description : Collects data from the job_statuses table and computes simple statistics grouped by job name.

  • Number of successes.
  • Number of failures.
  • Number of pending.
  • job_statuses values for the last success.
  • job_statuses values for the last failure.
  • Average duration of successful runs.
  • Maximum duration of successful runs.
  • Minimum duration of successful runs.

curl --location "$baseUrl/api/rest/v1/jobs" \

{
    "jobs": [
        {
            "name": "cryptocompare_getcoins",
            "statistics": {}
        },
        {
            "name": "gated_connectivity",
            "statistics": {}
        },
        {
            "name": "staking_service_new-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "a2606c53-383a-4e95-b26d-4949a834c663",
                    "startedAt": "2024-09-19T15:17:29.000420Z",
                    "updatedAt": "2024-09-19T15:17:29.241269Z",
                    "timeoutAt": "2024-09-19T15:22:29.000420Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.240849s",
                "maxDuration": "0.240849s",
                "minDuration": "0.240849s"
            }
        },
        {
            "name": "fee_service_fees-refresher",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "b49437c3-31e0-44e0-a6a6-8cd420ccb489",
                    "startedAt": "2024-09-19T15:17:36.000179Z",
                    "updatedAt": "2024-09-19T15:17:38.534327Z",
                    "timeoutAt": "2024-09-19T15:19:36.000179Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "2.534148s",
                "maxDuration": "2.534148s",
                "minDuration": "2.534148s"
            }
        },
        {
            "name": "balance_service_rebase-token-balances-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_broadcasting-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "92f1b25e-f621-432b-9760-e2636ebde024",
                    "startedAt": "2024-09-19T15:17:28.000307Z",
                    "updatedAt": "2024-09-19T15:17:28.373570Z",
                    "timeoutAt": "2024-09-19T15:22:28.000307Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.373263s",
                "maxDuration": "0.373263s",
                "minDuration": "0.373263s"
            }
        },
        {
            "name": "request_service_hsmready-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "07115d3c-6f58-425a-8a70-6a85a1854061",
                    "startedAt": "2024-09-19T15:17:28.000332Z",
                    "updatedAt": "2024-09-19T15:17:28.451169Z",
                    "timeoutAt": "2024-09-19T15:22:28.000332Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.450837s",
                "maxDuration": "0.450837s",
                "minDuration": "0.450837s"
            }
        },
        {
            "name": "report_service_counterparty-exposure-mailer",
            "statistics": {}
        },
        {
            "name": "event_service_pending-auto-transfer-request-handler",
            "statistics": {}
        },
        {
            "name": "wallet_service_addresses-nft-migrater",
            "statistics": {}
        },
        {
            "name": "exchange_service_exchanges-balances-handler",
            "statistics": {}
        },
        {
            "name": "request_service_failed-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "569af350-62a9-4024-8aa3-b67734c99262",
                    "startedAt": "2024-09-19T15:17:28.000359Z",
                    "updatedAt": "2024-09-19T15:17:28.544975Z",
                    "timeoutAt": "2024-09-19T15:22:28.000359Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.544616s",
                "maxDuration": "0.544616s",
                "minDuration": "0.544616s"
            }
        },
        {
            "name": "request_service_hsmready-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "03470622-722d-4093-9eb4-0ae8c050ab7f",
                    "startedAt": "2024-09-19T15:17:28.000166Z",
                    "updatedAt": "2024-09-19T15:17:28.355887Z",
                    "timeoutAt": "2024-09-19T15:22:28.000166Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.355721s",
                "maxDuration": "0.355721s",
                "minDuration": "0.355721s"
            }
        },
        {
            "name": "transaction_service_new-transaction-scores-handler",
            "statistics": {}
        },
        {
            "name": "blocksd_getfees",
            "statistics": {}
        },
        {
            "name": "transaction_service_token-holders-populator",
            "statistics": {}
        },
        {
            "name": "workflow_service_business_workflow",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "67043994-afd9-4ae7-b930-914913cd88aa",
                    "startedAt": "2024-09-19T15:17:35.001204Z",
                    "updatedAt": "2024-09-19T15:17:35.171894Z",
                    "timeoutAt": "2024-09-19T15:22:35.001204Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.128045500s",
                "maxDuration": "0.170690s",
                "minDuration": "0.085401s"
            }
        },
        {
            "name": "price_service_price-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_invalid-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "wallet_service_xtz-revelation-status-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_hsmfailed-2-requests-handler",
            "statistics": {}
        },
        {
            "name": "wallet_service_observed-addresses-handler",
            "statistics": {}
        },
        {
            "name": "balance_service_balances-desync-checker",
            "statistics": {}
        },
        {
            "name": "jobs_addresscreation",
            "statistics": {}
        },
        {
            "name": "database_connectivity",
            "statistics": {}
        },
        {
            "name": "webhook_service_webhook_event_handler",
            "statistics": {}
        },
        {
            "name": "user_service_expired-api-key-nonces-handler",
            "statistics": {}
        },
        {
            "name": "price_service_price-history-refresher",
            "statistics": {}
        },
        {
            "name": "taurus_network_service_participants-register-status-handler",
            "statistics": {}
        },
        {
            "name": "taurus_network_service_received-pledges-withdrawals-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "15479720-4c0b-4eda-b15a-00fe5735306c",
                    "startedAt": "2024-09-19T15:17:34.000909Z",
                    "updatedAt": "2024-09-19T15:17:34.217664Z",
                    "timeoutAt": "2024-09-19T15:19:34.000909Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.216755s",
                "maxDuration": "0.216755s",
                "minDuration": "0.216755s"
            }
        },
        {
            "name": "event_service_triggered-auto-transfer-events-handler",
            "statistics": {}
        },
        {
            "name": "envelope_service_bulk_list_sender",
            "statistics": {}
        },
        {
            "name": "wallet_service_xtz-initializing-addresses-handler",
            "statistics": {}
        },
        {
            "name": "request_service_fast-approved-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "f4477bbb-c8ef-4388-ba9f-fd67a8d8dbb8",
                    "startedAt": "2024-09-19T15:17:34.001062Z",
                    "updatedAt": "2024-09-19T15:17:34.270825Z",
                    "timeoutAt": "2024-09-19T15:22:34.001062Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.269763s",
                "maxDuration": "0.269763s",
                "minDuration": "0.269763s"
            }
        },
        {
            "name": "scoreproviders_connectivity",
            "statistics": {}
        },
        {
            "name": "wallet_service_currency-wallets-businessrules-creator",
            "statistics": {}
        },
        {
            "name": "request_service_pending-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_created-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "792d3f8f-cc0a-4f6a-9202-e2b6a94f6458",
                    "startedAt": "2024-09-19T15:17:28.000320Z",
                    "updatedAt": "2024-09-19T15:17:28.493472Z",
                    "timeoutAt": "2024-09-19T15:22:28.000320Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.493152s",
                "maxDuration": "0.493152s",
                "minDuration": "0.493152s"
            }
        },
        {
            "name": "rule_service_changes-detector",
            "statistics": {
                "pending": "1"
            }
        },
        {
            "name": "taurus_network_service_participants-synchronizer",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "92c6ca54-3f38-4bdb-8e6a-a909a6a4e002",
                    "startedAt": "2024-09-19T15:17:34.001070Z",
                    "updatedAt": "2024-09-19T15:17:34.558287Z",
                    "timeoutAt": "2024-09-19T15:19:34.001070Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.552200s",
                "maxDuration": "0.557217s",
                "minDuration": "0.547183s"
            }
        },
        {
            "name": "hsm_status",
            "statistics": {}
        },
        {
            "name": "staking_service_merging-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "ac3643fd-d904-46f8-9033-52d6be2eec0f",
                    "startedAt": "2024-09-19T15:17:29.000372Z",
                    "updatedAt": "2024-09-19T15:17:29.195230Z",
                    "timeoutAt": "2024-09-19T15:22:29.000372Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.194858s",
                "maxDuration": "0.194858s",
                "minDuration": "0.194858s"
            }
        },
        {
            "name": "request_service_creating-request-bundles-handler",
            "statistics": {}
        },
        {
            "name": "action_service_running-actions-handler",
            "statistics": {}
        },
        {
            "name": "request_service_hsmsigned-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "6a9108a9-3403-4083-9d29-37378e959789",
                    "startedAt": "2024-09-19T15:17:28.000314Z",
                    "updatedAt": "2024-09-19T15:17:28.458312Z",
                    "timeoutAt": "2024-09-19T15:22:28.000314Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.457998s",
                "maxDuration": "0.457998s",
                "minDuration": "0.457998s"
            }
        },
        {
            "name": "event_service_on-demand-triggered-auto-transfer-events-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "43472f1d-c0f3-432a-a531-1e425f27d82f",
                    "startedAt": "2024-09-19T15:17:29.000358Z",
                    "updatedAt": "2024-09-19T15:17:29.187490Z",
                    "timeoutAt": "2024-09-19T15:27:29.000358Z",
                    "message": "{\"msg\":\"successfully finished\"}",
                    "status": "success"
                },
                "avgDuration": "0.187132s",
                "maxDuration": "0.187132s",
                "minDuration": "0.187132s"
            }
        },
        {
            "name": "staking_service_cosmoskichain-staking-rewards-refresher",
            "statistics": {}
        },
        {
            "name": "staking_service_staking-states-collection-refresher",
            "statistics": {}
        },
        {
            "name": "currency_service_currencies-refresher",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "64f26800-b46e-44e1-a2e8-75caa1475f19",
                    "startedAt": "2024-09-19T15:17:32.000433Z",
                    "updatedAt": "2024-09-19T15:17:34.853836Z",
                    "timeoutAt": "2024-09-19T15:19:32.000433Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "2.853403s",
                "maxDuration": "2.853403s",
                "minDuration": "2.853403s"
            }
        },
        {
            "name": "request_service_replaced-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "event_service_initialized-auto-transfer-request-handler",
            "statistics": {}
        },
        {
            "name": "staking_service_observing-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "b50509b6-b3fa-42f1-9f0e-0606bdd6a9b7",
                    "startedAt": "2024-09-19T15:17:29.000198Z",
                    "updatedAt": "2024-09-19T15:17:29.160628Z",
                    "timeoutAt": "2024-09-19T15:22:29.000198Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.160430s",
                "maxDuration": "0.160430s",
                "minDuration": "0.160430s"
            }
        },
        {
            "name": "staking_service_active-icp-neurons-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_expired-to-cancel-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_pending-requests-handler",
            "statistics": {}
        },
        {
            "name": "health_gc",
            "statistics": {}
        },
        {
            "name": "staking_service_dot-staking-withdraw-unbonded-handler",
            "statistics": {}
        },
        {
            "name": "staking_service_near-staking-rewards-refresher",
            "statistics": {}
        },
        {
            "name": "balance_service_balances-garbage-collector",
            "statistics": {}
        },
        {
            "name": "request_service_dot-extrinsics-refresher",
            "statistics": {}
        },
        {
            "name": "blocksd_connectivity",
            "statistics": {}
        },
        {
            "name": "staking_service_disbursing-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "55e13b63-d887-4135-a484-a6540bf59e3c",
                    "startedAt": "2024-09-19T15:17:29.000388Z",
                    "updatedAt": "2024-09-19T15:17:29.225821Z",
                    "timeoutAt": "2024-09-19T15:22:29.000388Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.225433s",
                "maxDuration": "0.225433s",
                "minDuration": "0.225433s"
            }
        },
        {
            "name": "eventbus_service_event-sequencer",
            "statistics": {}
        },
        {
            "name": "wallet_service_token-wallets-syncer",
            "statistics": {}
        },
        {
            "name": "request_service_hsmsigned-2-requests-handler",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "65d929b2-446e-464b-881c-337990a8dcd2",
                    "startedAt": "2024-09-19T15:17:33.007646Z",
                    "updatedAt": "2024-09-19T15:17:33.160527Z",
                    "timeoutAt": "2024-09-19T15:22:33.007646Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.137156s",
                "maxDuration": "0.152881s",
                "minDuration": "0.121431s"
            }
        },
        {
            "name": "whitelisted_address_score_service_whitelisted-addresses-scores-refresher",
            "statistics": {}
        },
        {
            "name": "transaction_service_token-balances-refresher",
            "statistics": {}
        },
        {
            "name": "balance_service_existential-balance-updates-processor",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "51f53308-970b-424c-8be7-0110b649559e",
                    "startedAt": "2024-09-19T15:17:33.007534Z",
                    "updatedAt": "2024-09-19T15:17:33.143318Z",
                    "timeoutAt": "2024-09-19T15:27:33.007534Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.135784s",
                "maxDuration": "0.135784s",
                "minDuration": "0.135784s"
            }
        },
        {
            "name": "request_service_hsmsigned-requests-handler",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "cc79ce55-6589-4755-918f-7fe8c0a8776a",
                    "startedAt": "2024-09-19T15:17:33.007654Z",
                    "updatedAt": "2024-09-19T15:17:33.153984Z",
                    "timeoutAt": "2024-09-19T15:22:33.007654Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.180099500s",
                "maxDuration": "0.213869s",
                "minDuration": "0.146330s"
            }
        },
        {
            "name": "taurus_network_service_new-shared-addresses-handler",
            "statistics": {}
        },
        {
            "name": "transaction_service_token-balances-garbage-collector",
            "statistics": {}
        },
        {
            "name": "wallet_service_xlm-address-flags-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_hsmready-2-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "b2bdc8a4-860f-4ba1-8e58-b8380b4b1588",
                    "startedAt": "2024-09-19T15:17:28.000300Z",
                    "updatedAt": "2024-09-19T15:17:28.250830Z",
                    "timeoutAt": "2024-09-19T15:22:28.000300Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.250530s",
                "maxDuration": "0.250530s",
                "minDuration": "0.250530s"
            }
        },
        {
            "name": "request_service_broadcasting-2-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "c364881a-8c9e-4054-aedf-ad8fa4fc0f14",
                    "startedAt": "2024-09-19T15:17:28.000354Z",
                    "updatedAt": "2024-09-19T15:17:28.527527Z",
                    "timeoutAt": "2024-09-19T15:22:28.000354Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.527173s",
                "maxDuration": "0.527173s",
                "minDuration": "0.527173s"
            }
        },
        {
            "name": "wallet_service_xtz-ready-for-init-addresses-handler",
            "statistics": {}
        },
        {
            "name": "request_service_action-prepared-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_approved-request-bundles-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "af74a54e-afef-4b41-8eb7-edebdb6de7bf",
                    "startedAt": "2024-09-19T15:17:28.000344Z",
                    "updatedAt": "2024-09-19T15:17:28.505626Z",
                    "timeoutAt": "2024-09-19T15:22:28.000344Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.505282s",
                "maxDuration": "0.505282s",
                "minDuration": "0.505282s"
            }
        },
        {
            "name": "taurus_network_service_pledges-stats-refresher",
            "statistics": {}
        },
        {
            "name": "staking_service_sol-staking-info-refresher",
            "statistics": {}
        },
        {
            "name": "staking_service_cosmoshub-staking-rewards-refresher",
            "statistics": {}
        },
        {
            "name": "wallet_service_created-addresses-handler",
            "statistics": {}
        },
        {
            "name": "wallet_service_xlm-existentialbalance-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_bundle-approved-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "5dfa676b-4216-424a-9597-38360ebf5f4d",
                    "startedAt": "2024-09-19T15:17:28.000349Z",
                    "updatedAt": "2024-09-19T15:17:28.514040Z",
                    "timeoutAt": "2024-09-19T15:22:28.000349Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.513691s",
                "maxDuration": "0.513691s",
                "minDuration": "0.513691s"
            }
        },
        {
            "name": "taurus_network_service_addresses-synchronizer",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "560706d0-4bba-4099-817f-00ad8b0dc0da",
                    "startedAt": "2024-09-19T15:17:34.001081Z",
                    "updatedAt": "2024-09-19T15:17:34.496963Z",
                    "timeoutAt": "2024-09-19T15:19:34.001081Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.486808500s",
                "maxDuration": "0.495882s",
                "minDuration": "0.477735s"
            }
        },
        {
            "name": "wallet_service_algo-optin-status-refresher",
            "statistics": {}
        },
        {
            "name": "request_service_opt-ins-releaser",
            "statistics": {}
        },
        {
            "name": "request_service_hsmfailed-requests-handler",
            "statistics": {}
        },
        {
            "name": "staking_service_spawning-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "477a3c3f-3368-4ab8-8acf-743f5fd35032",
                    "startedAt": "2024-09-19T15:17:29.000403Z",
                    "updatedAt": "2024-09-19T15:17:29.207856Z",
                    "timeoutAt": "2024-09-19T15:22:29.000403Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.207453s",
                "maxDuration": "0.207453s",
                "minDuration": "0.207453s"
            }
        },
        {
            "name": "taurus_network_service_tn-event-tasks-handler",
            "statistics": {}
        },
        {
            "name": "audit_service_trails-ingestor",
            "statistics": {}
        },
        {
            "name": "wallet_service_signed-addresses-handler",
            "statistics": {}
        },
        {
            "name": "request_service_ready-requests-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "cfa5303e-d994-4f7f-8073-85ef34168d81",
                    "startedAt": "2024-09-19T15:17:35.001214Z",
                    "updatedAt": "2024-09-19T15:17:35.222510Z",
                    "timeoutAt": "2024-09-19T15:22:35.001214Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.221296s",
                "maxDuration": "0.221296s",
                "minDuration": "0.221296s"
            }
        },
        {
            "name": "taurus_network_service_request-created-pledges-withdrawal-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "1cbfd620-8cd5-4252-8ad1-344238b13111",
                    "startedAt": "2024-09-19T15:17:29.000343Z",
                    "updatedAt": "2024-09-19T15:17:29.153198Z",
                    "timeoutAt": "2024-09-19T15:19:29.000343Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.152855s",
                "maxDuration": "0.152855s",
                "minDuration": "0.152855s"
            }
        },
        {
            "name": "report_service_counterparty-exposure-monitor",
            "statistics": {}
        },
        {
            "name": "event_service_auto-transfer-events-task-handler",
            "statistics": {}
        },
        {
            "name": "balance_service_funds-releaser",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "82ce753e-f7e1-4d8f-9ed5-461b02b7283f",
                    "startedAt": "2024-09-19T15:17:41.000863Z",
                    "updatedAt": "2024-09-19T15:17:41.332924Z",
                    "timeoutAt": "2024-09-19T15:22:41.000863Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.332061s",
                "maxDuration": "0.332061s",
                "minDuration": "0.332061s"
            }
        },
        {
            "name": "request_service_new-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_fast-approved-2-requests-handler",
            "statistics": {
                "pending": "1"
            }
        },
        {
            "name": "blocksd_getbalance",
            "statistics": {}
        },
        {
            "name": "request_service_timeout-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_action-auto-prepared-2-requests-handler",
            "statistics": {}
        },
        {
            "name": "transaction_service_transactions-exporter",
            "statistics": {}
        },
        {
            "name": "staking_service_icp-balance-activity-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "62ff9a1d-679a-4c0f-a758-5fd3b05bdddb",
                    "startedAt": "2024-09-19T15:17:29.000408Z",
                    "updatedAt": "2024-09-19T15:17:29.217963Z",
                    "timeoutAt": "2024-09-19T15:22:29.000408Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.217555s",
                "maxDuration": "0.217555s",
                "minDuration": "0.217555s"
            }
        },
        {
            "name": "eventbus_service_event-dispatcher",
            "statistics": {}
        },
        {
            "name": "request_service_expired-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_creating-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_approved-2-requests-handler",
            "statistics": {}
        },
        {
            "name": "request_service_broadcasting-requests-handler",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "95013799-f84b-4cf4-8d15-f11d117cb5f3",
                    "startedAt": "2024-09-19T15:17:35.001210Z",
                    "updatedAt": "2024-09-19T15:17:36.131533Z",
                    "timeoutAt": "2024-09-19T15:22:35.001210Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "1.579489500s",
                "maxDuration": "2.028656s",
                "minDuration": "1.130323s"
            }
        },
        {
            "name": "gated_proxy",
            "statistics": {}
        },
        {
            "name": "change_service_email-event-task-handler",
            "statistics": {}
        },
        {
            "name": "whitelist_service_verified-wladdress-batch-signatures-handler",
            "statistics": {
                "successes": "3",
                "lastSuccess": {
                    "id": "0719845c-bdc1-4299-92c1-66a69c0ae12a",
                    "startedAt": "2024-09-19T15:17:37.000594Z",
                    "updatedAt": "2024-09-19T15:17:37.141830Z",
                    "timeoutAt": "2024-09-19T15:22:37.000594Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.253901666s",
                "maxDuration": "0.464518s",
                "minDuration": "0.141236s"
            }
        },
        {
            "name": "wallet_service_xlm-trustline-refresher",
            "statistics": {}
        },
        {
            "name": "webhook_service_webhook_caller",
            "statistics": {}
        },
        {
            "name": "envelope_service_status_refresher",
            "statistics": {}
        },
        {
            "name": "taurus_network_service_address-commands-synchronizer",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "41e0ff76-0578-4f28-bba5-0fff3acfaeb0",
                    "startedAt": "2024-09-19T15:17:34.001076Z",
                    "updatedAt": "2024-09-19T15:17:34.416347Z",
                    "timeoutAt": "2024-09-19T15:19:34.001076Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.467332500s",
                "maxDuration": "0.519394s",
                "minDuration": "0.415271s"
            }
        },
        {
            "name": "exchanges_connectivity",
            "statistics": {}
        },
        {
            "name": "exchanges_getbalances",
            "statistics": {}
        },
        {
            "name": "address_score_service_addresses-scores-refresher",
            "statistics": {}
        },
        {
            "name": "staking_service_dissolved-icp-neurons-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "23f6564b-3e5f-44b3-ad34-4e13165ea49e",
                    "startedAt": "2024-09-19T15:17:29.000365Z",
                    "updatedAt": "2024-09-19T15:17:29.202497Z",
                    "timeoutAt": "2024-09-19T15:22:29.000365Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.202132s",
                "maxDuration": "0.202132s",
                "minDuration": "0.202132s"
            }
        },
        {
            "name": "request_service_canceled-signed-requests-handler",
            "statistics": {}
        },
        {
            "name": "transaction_service_populate-transaction-balance",
            "statistics": {}
        },
        {
            "name": "balance_service_balances-history-refresher",
            "statistics": {}
        },
        {
            "name": "action_service_sleeping-actions-handler",
            "statistics": {}
        },
        {
            "name": "staking_service_icp-neurons-creator",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "b02a6a5a-a0b0-48f3-bf1d-a8b49db96dbc",
                    "startedAt": "2024-09-19T15:17:29.000383Z",
                    "updatedAt": "2024-09-19T15:17:29.178576Z",
                    "timeoutAt": "2024-09-19T15:22:29.000383Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.178193s",
                "maxDuration": "0.178193s",
                "minDuration": "0.178193s"
            }
        },
        {
            "name": "balance_service_balances-refresher",
            "statistics": {}
        },
        {
            "name": "balance_service_balances-history-garbage-collector",
            "statistics": {}
        },
        {
            "name": "jobs_webhooks",
            "statistics": {}
        },
        {
            "name": "staking_service_ada-staking-rewards-refresher",
            "statistics": {}
        },
        {
            "name": "statistics_service_statistics-history-refresh",
            "statistics": {}
        },
        {
            "name": "transaction_service_observed-transactions-handler",
            "statistics": {}
        },
        {
            "name": "taurus_network_service_tn-travel-rule-to-send-handler",
            "statistics": {}
        },
        {
            "name": "request_service_approved-requests-handler",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "0a52c125-6a53-4a88-982a-a02145c9d0ae",
                    "startedAt": "2024-09-19T15:17:41.001021Z",
                    "updatedAt": "2024-09-19T15:17:41.204044Z",
                    "timeoutAt": "2024-09-19T15:22:41.001021Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.203443500s",
                "maxDuration": "0.203864s",
                "minDuration": "0.203023s"
            }
        },
        {
            "name": "staking_service_ftm-staking-addresses-refresher",
            "statistics": {}
        },
        {
            "name": "jobs_scorerefresh",
            "statistics": {}
        },
        {
            "name": "staking_service_icp-staking-activity-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "83b89f02-b9ff-4573-8b0b-5007f0f6d2e3",
                    "startedAt": "2024-09-19T15:17:29.000413Z",
                    "updatedAt": "2024-09-19T15:17:29.233457Z",
                    "timeoutAt": "2024-09-19T15:22:29.000413Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.233044s",
                "maxDuration": "0.233044s",
                "minDuration": "0.233044s"
            }
        },
        {
            "name": "transaction_service_processing-transaction-scores-handler",
            "statistics": {}
        },
        {
            "name": "taurus_network_service_confirmedbyowner-pledges-withdrawals-handler",
            "statistics": {
                "successes": "1",
                "lastSuccess": {
                    "id": "e8fd28ef-7f67-493c-b3ed-9ca0616f7952",
                    "startedAt": "2024-09-19T15:17:29.000352Z",
                    "updatedAt": "2024-09-19T15:17:29.171004Z",
                    "timeoutAt": "2024-09-19T15:19:29.000352Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.170652s",
                "maxDuration": "0.170652s",
                "minDuration": "0.170652s"
            }
        },
        {
            "name": "taurus_network_service_pledges-stats-valuation-refresher",
            "statistics": {}
        },
        {
            "name": "daemon_job_status_gc",
            "statistics": {}
        },
        {
            "name": "request_service_dot-extrinsics-garbage-collector",
            "statistics": {}
        },
        {
            "name": "request_service_verified-request-batch-signatures-handler",
            "statistics": {
                "successes": "2",
                "lastSuccess": {
                    "id": "39ab40eb-0a85-4872-a4ca-77420ffc7caf",
                    "startedAt": "2024-09-19T15:17:33.007661Z",
                    "updatedAt": "2024-09-19T15:17:33.166918Z",
                    "timeoutAt": "2024-09-19T15:22:33.007661Z",
                    "message": "null",
                    "status": "success"
                },
                "avgDuration": "0.180617s",
                "maxDuration": "0.201977s",
                "minDuration": "0.159257s"
            }
        }
    ]
}

Get Job data from database table

This endpoint requires authentication as the technical user.

Description : Returns values from a row in the job_statuses table. The job_uuid refers to a single job run. This can be found in logs.

curl --location "$baseUrl/api/rest/v1/jobs/request_service_approved-requests-handler" \

{
    "job": {
        "name": "request_service_approved-requests-handler",
        "statistics": {
            "successes": "13",
            "lastSuccess": {
                "id": "dffe5c12-ced9-4590-8257-b715f7ede2f1",
                "startedAt": "2024-09-19T15:20:15.000523Z",
                "updatedAt": "2024-09-19T15:20:15.240831Z",
                "timeoutAt": "2024-09-19T15:25:15.000523Z",
                "message": "null",
                "status": "success"
            },
            "avgDuration": "0.566382384s",
            "maxDuration": "3.628076s",
            "minDuration": "0.128084s"
        }
    }
}

Get Job data by Job UUID

This endpoint requires authentication as the technical user.

Description : Returns values from a row in the job_statuses table. The job_uuid refers to a single job run. This can be found in logs.

curl --location "$baseUrl/api/rest/v1/jobs/request_service_approved-requests-handler/status/f8e36233-115c-438e-8893-a404b7a47f95" \

{
    "status": {
        "id": "f8e36233-115c-438e-8893-a404b7a47f95",
        "startedAt": "2024-09-19T15:27:43.000734Z",
        "updatedAt": "2024-09-19T15:27:44.495347Z",
        "timeoutAt": "2024-09-19T15:32:43.000734Z",
        "message": "null",
        "status": "success"
    }
}

HSM and vaultd specific health checks

Get HSM status

Description : perform a health check through vaultd and returns HSM status.

curl --location "$baseUrl/api/rest/v1/hsm/status" \

{
    "status": "success",
    "hsmReply": {
        "code": "ValidationError",
        "message": "failed to unpack signed_request_envelope: received empty requests envelope"
    }
}

Get HSM version status

Description : perform an health check through vaultd and returns HSM version.

curl --location "$baseUrl/api/rest/v1/hsm/versions" \

{
    "hsmVersion": "2.46.1",
    "engineVersion": "2.46.1"
}

Usage of API and authentication

Authenticate

curl -X POST "https://int-validator-core-crdb.t-bx.io/rjpyber72n6brsdzksotivcm33mw78q4/api/rest/v1/authentication/token" -H "accept: application/json" -H "Content-Type: application/json" -d "{ \"email\": \"[email protected]\", \"password\": \"XXXX\"}"
#{"result":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTEsImV4dGVybmFsVXNlcklEIjoidGVhbTFAYmFuay5jb20iLCJ0ZW5hbnRJRCI6MSwiZmlyc3RuYW1lIjoiSm9obiIsImxhc3RuYW1lIjoiVDEiLCJyb2xlcyI6WyJyZXF1ZXN0Y3JlYXRvciIsInJlcXVlc3RhcHByb3ZlciJdLCJlbWFpbCI6InRlYW0xQGJhbmsuY29tIiwiZXhwIjoxNTgyMjAwMTQwLCJpYXQiOjE1ODIxMTM3NDB9.S88CqMcBVKMIEbFstNmUaWnp9QcyfYaIfTAyedinudw"}

export AUTH="Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTEsImV4dGVybmFsVXNlcklEIjoidGVhbTFAYmFuay5jb20iLCJ0ZW5hbnRJRCI6MSwiZmlyc3RuYW1lIjoiSm9obiIsImxhc3RuYW1lIjoiVDEiLCJyb2xlcyI6WyJyZXF1ZXN0Y3JlYXRvciIsInJlcXVlc3RhcHByb3ZlciJdLCJlbWFpbCI6InRlYW0xQGJhbmsuY29tIiwiZXhwIjoxNTgyMjY1MTY0LCJpYXQiOjE1ODIxNzg3NjR9.G0HL5XTy_yinun1LIW9g9cy66_FXdufomZbrG3VmAA0"


Get BTC nostro wallet

curl -H 'Accept: application/json' -H "$AUTH" https://int-validator-core-crdb.t-bx.io/rjpyber72n6brsdzksotivcm33mw78q4/api/rest/v1/wallets/info | jq '.result[] | select(.seed == "btc" and .name == "nostro")'

Get all addresses from a currencies

curl -H 'Accept: application/json' -H "$AUTH" https://int-validator-core-crdb.t-bx.io/rjpyber72n6brsdzksotivcm33mw78q4/api/rest/v1/addresses?currency=BTC | jq '.result[] | select(.seed="BTC")'

Get rules and decode the proto

curl "https://int-validator-core-crdb.t-bx.io/rjpyber72n6brsdzksotivcm33mw78q4/api/rest/v1/rules" -H "accept: application/json" -H "Content-Type: application/json"  -H "$AUTH" | jq .result.rulesContainer
#"CtMBChljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFTEpoRVVOTExIZ0k4TGlXSmFlSkdwYUJmZHZnbwpZeUtzalNGeVRNeEVDUi9FKzFxcHpEbE5OdWc3aERQZ0JQcFozWitVOFFXamFLQjRNcmJqMi9rSW1RPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIABArOAQoUc3VwZXJhZG1pbjFAYmFuay5jb20SsgEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVNMk50emFGaG03eElSM092V3E1Y2hXMy9HRXZXCkwrM3Vxb0U2bEVKMTNlV2J1bHhzUC81aDM2VkNxWURJR04vMHdEZVd3TFlkcHU1SGhTWFdoeENzQ0E9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KGgEDCs4BChRzdXBlcmFkbWluMkBiYW5rLmNvbRKyAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk5ekd1Z3pOTElmcFp1YVVyenl3RWgvOFpkdFgKNElJdUlwREhMdkozNmdsRmpmeHhTWmRPRzZ5SEtGRmxRaDFHWDNPQ0ZaeEhlK3hlT0dCSkhCZ3JhQT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQoaAQMKzgEKFHN1cGVyYWRtaW4zQGJhbmsuY29tErIBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFVjJ6RUR2WmpKL3FSK1FoMXIwc0tOY2kzOXc3OQpCMDBOZzVNR2c0d1JNN0FoOXByMUdia2dyS0lVZjRrYUhQanJQVmFRS0lSOHpEVTNqZ20wbFd4ZUhBPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tChoBAwrIAQoOdGVhbTFAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVMSmhFVU5MTEhnSThMaVdKYWVKR3BhQmZkdmdvCll5S3NqU0Z5VE14RUNSL0UrMXFwekRsTk51ZzdoRFBnQlBwWjNaK1U4UVdqYUtCNE1yYmoyL2tJbVE9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAgQACscBCg50ZWFtMkBiYW5rLmNvbRKxAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTRVQW8rR054dzR0RXFkbVREaTZ2Mk1acTJ1ZzgKYWpXOC9NbnFKL1FkNGJuaVB5RHZJVHJTRVpVeVA5VHZZcGtMQWJnL0FDeGNSL3lBNmxCRWd0RTYwUT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLRoBAArHAQoOdGVhbTNAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVIaml3VThDd3hQUEYrU3hiVFZPbTdaMW5kOVA2Cm1UYkZDMkZZVVlpU2xBSndmRTd3b003QkFPZzZiOFcweTBKSUpBYyt0MTZWN3pPTVd6c0ZWbWVlNmc9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAQAK1wEKHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFWVBYSUI0bXRxeTBBTHVFS2RZQWZRcFdtc0t1NgpEbTVhMDVkY1JVRlc1MkpHazBNNzdlc2FvSHNpSHVHODlxRnF5ZkZJLzJQZjRTL2hMbkhCR1dNbVJnPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIBAhIoCgdfX2dyb3VwEh12YWxpZGF0b3ItY29yZUB0YXVydXNncm91cC5jaBInCgZyZXZpZXcSHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoEjIKBXRlYW0xEhljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoEg50ZWFtMUBiYW5rLmNv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"

# Raw decode
echo -n "CtMBChljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFTEpoRVVOTExIZ0k4TGlXSmFlSkdwYUJmZHZnbwpZeUtzalNGeVRNeEVDUi9FKzFxcHpEbE5OdWc3aERQZ0JQcFozWitVOFFXamFLQjRNcmJqMi9rSW1RPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIABArOAQoUc3VwZXJhZG1pbjFAYmFuay5jb20SsgEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVNMk50emFGaG03eElSM092V3E1Y2hXMy9HRXZXCkwrM3Vxb0U2bEVKMTNlV2J1bHhzUC81aDM2VkNxWURJR04vMHdEZVd3TFlkcHU1SGhTWFdoeENzQ0E9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KGgEDCs4BChRzdXBlcmFkbWluMkBiYW5rLmNvbRKyAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk5ekd1Z3pOTElmcFp1YVVyenl3RWgvOFpkdFgKNElJdUlwREhMdkozNmdsRmpmeHhTWmRPRzZ5SEtGRmxRaDFHWDNPQ0ZaeEhlK3hlT0dCSkhCZ3JhQT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQoaAQMKzgEKFHN1cGVyYWRtaW4zQGJhbmsuY29tErIBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFVjJ6RUR2WmpKL3FSK1FoMXIwc0tOY2kzOXc3OQpCMDBOZzVNR2c0d1JNN0FoOXByMUdia2dyS0lVZjRrYUhQanJQVmFRS0lSOHpEVTNqZ20wbFd4ZUhBPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tChoBAwrIAQoOdGVhbTFAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVMSmhFVU5MTEhnSThMaVdKYWVKR3BhQmZkdmdvCll5S3NqU0Z5VE14RUNSL0UrMXFwekRsTk51ZzdoRFBnQlBwWjNaK1U4UVdqYUtCNE1yYmoyL2tJbVE9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAgQACscBCg50ZWFtMkBiYW5rLmNvbRKxAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTRVQW8rR054dzR0RXFkbVREaTZ2Mk1acTJ1ZzgKYWpXOC9NbnFKL1FkNGJuaVB5RHZJVHJTRVpVeVA5VHZZcGtMQWJnL0FDeGNSL3lBNmxCRWd0RTYwUT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLRoBAArHAQoOdGVhbTNAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVIaml3VThDd3hQUEYrU3hiVFZPbTdaMW5kOVA2Cm1UYkZDMkZZVVlpU2xBSndmRTd3b003QkFPZzZiOFcweTBKSUpBYyt0MTZWN3pPTVd6c0ZWbWVlNmc9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAQAK1wEKHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFWVBYSUI0bXRxeTBBTHVFS2RZQWZRcFdtc0t1NgpEbTVhMDVkY1JVRlc1MkpHazBNNzdlc2FvSHNpSHVHODlxRnF5ZkZJLzJQZjRTL2hMbkhCR1dNbVJnPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIBAhIoCgdfX2dyb3VwEh12YWxpZGF0b3ItY29yZUB0YXVydXNncm91cC5jaBInCgZyZXZpZXcSHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoEjIKBXRlYW0xEhljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoEg50ZWFtMUBiYW5rLmNv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" | base64 -d | protoc --decode_raw

#Using proto file
echo -n "CtMBChljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFTEpoRVVOTExIZ0k4TGlXSmFlSkdwYUJmZHZnbwpZeUtzalNGeVRNeEVDUi9FKzFxcHpEbE5OdWc3aERQZ0JQcFozWitVOFFXamFLQjRNcmJqMi9rSW1RPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIABArOAQoUc3VwZXJhZG1pbjFAYmFuay5jb20SsgEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVNMk50emFGaG03eElSM092V3E1Y2hXMy9HRXZXCkwrM3Vxb0U2bEVKMTNlV2J1bHhzUC81aDM2VkNxWURJR04vMHdEZVd3TFlkcHU1SGhTWFdoeENzQ0E9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KGgEDCs4BChRzdXBlcmFkbWluMkBiYW5rLmNvbRKyAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk5ekd1Z3pOTElmcFp1YVVyenl3RWgvOFpkdFgKNElJdUlwREhMdkozNmdsRmpmeHhTWmRPRzZ5SEtGRmxRaDFHWDNPQ0ZaeEhlK3hlT0dCSkhCZ3JhQT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQoaAQMKzgEKFHN1cGVyYWRtaW4zQGJhbmsuY29tErIBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFVjJ6RUR2WmpKL3FSK1FoMXIwc0tOY2kzOXc3OQpCMDBOZzVNR2c0d1JNN0FoOXByMUdia2dyS0lVZjRrYUhQanJQVmFRS0lSOHpEVTNqZ20wbFd4ZUhBPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tChoBAwrIAQoOdGVhbTFAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVMSmhFVU5MTEhnSThMaVdKYWVKR3BhQmZkdmdvCll5S3NqU0Z5VE14RUNSL0UrMXFwekRsTk51ZzdoRFBnQlBwWjNaK1U4UVdqYUtCNE1yYmoyL2tJbVE9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAgQACscBCg50ZWFtMkBiYW5rLmNvbRKxAS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTRVQW8rR054dzR0RXFkbVREaTZ2Mk1acTJ1ZzgKYWpXOC9NbnFKL1FkNGJuaVB5RHZJVHJTRVpVeVA5VHZZcGtMQWJnL0FDeGNSL3lBNmxCRWd0RTYwUT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLRoBAArHAQoOdGVhbTNAYmFuay5jb20SsQEtLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVIaml3VThDd3hQUEYrU3hiVFZPbTdaMW5kOVA2Cm1UYkZDMkZZVVlpU2xBSndmRTd3b003QkFPZzZiOFcweTBKSUpBYyt0MTZWN3pPTVd6c0ZWbWVlNmc9PQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0aAQAK1wEKHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoErEBLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFWVBYSUI0bXRxeTBBTHVFS2RZQWZRcFdtc0t1NgpEbTVhMDVkY1JVRlc1MkpHazBNNzdlc2FvSHNpSHVHODlxRnF5ZkZJLzJQZjRTL2hMbkhCR1dNbVJnPT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tGgIBAhIoCgdfX2dyb3VwEh12YWxpZGF0b3ItY29yZUB0YXVydXNncm91cC5jaBInCgZyZXZpZXcSHXZhbGlkYXRvci1jb3JlQHRhdXJ1c2dyb3VwLmNoEjIKBXRlYW0xEhljaHJpc3RvcGhlQHRhdXJ1c2dyb3VwLmNoEg50ZWFtMUBiYW5rLmNv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" | base64 -d | protoc --decode tgvalidatord.Rules rule.proto

Health checks in Taurus-EXPLORERS

Taurus-EXPLORERS is exposing Health checks through the same API endpoint:

https://explorers.t-dx.com/api/rest/v1/health/all

You will get a list of different checks per blockchain:

  • height, giving you node head and what is currently stored in Explorers
  • indexing
  • collections:
    • balance
    • collection_erc_token_balance
    • staking
    • opt-in.

Taurus-EXPLORERS Health checks description

Height

The height health check ensures that the latest block processed by blocksd, and stored in blocksd internal database, is not more than acceptableLateBlock behind the current blockchain1 height in terms of blocks2. can be set in blocksd configuration yml file as such:

<coin>:
        enabled: true
        ...
        healthchecks:
          height:
            options:
              acceptable_late_block: <Acceptable number of blocks of delay>

1 Note: the blockchain node connected to the blocksd instance is used as source of truth for querying the blockchain state.

2 Note: only for BTC, if indexing the testnet network, the check additionally verifies that, if behind more than acceptableLateBlock blocks, blocksd is still not more than acceptableLateBlockDelaylate with respect to the timestamp of the latest block of the blockchain.

Indexing

Collections

Taurus-Explorer Health checks list

Here is a non-exhaustive list of available checks for each enabled coin:

{
  "b2da5a7e-49a5-4c03-9469-7428d0df7dd8": {
    "ada": [
      "collection_stake",
      "height",
      "indexing"
    ],
    "algo": [
      "collection_balance",
      "collection_optin",
      "height",
      "indexing"
    ],
    "avalanche-c": [
      "collection_balance",
      "collection_erc_token_balance",
      "height",
      "indexing"
    ],
    "avalanche-c_erc": [
      "height",
      "indexing"
    ],
    "bch": [
      "height",
      "indexing"
    ],
    "btc": [
      "height",
      "indexing"
    ],
    "cosmos": [
      "collection_balance",
      "collection_stake",
      "height",
      "indexing"
    ],
    "dot": [
      "collection_balance",
      "collection_stake",
      "height",
      "indexing"
    ],
    "erc20": [
      "height",
      "indexing"
    ],
    "eth": [
      "collection_balance",
      "collection_erc_token_balance",
      "height",
      "indexing"
    ],
    "ftm": [
      "collection_balance",
      "collection_stake",
      "height",
      "indexing"
    ],
    "icp": [
      "collection_balance",
      "height",
      "indexing"
    ],
    "kichain": [
      "collection_balance",
      "collection_stake",
      "height",
      "indexing"
    ],
    "ltc": [
      "height",
      "indexing"
    ],
    "near": [
      "collection_balance",
      "collection_stake",
      "height",
      "indexing"
    ],
    "polygon": [
      "collection_balance",
      "collection_erc_token_balance",
      "height",
      "indexing"
    ],
    "polygon_erc20": [
      "height",
      "indexing"
    ],
    "sol": [
      "collection_balance",
      "height",
      "indexing"
    ],
    "xlm": [
      "collection_address_flags",
      "collection_balance",
      "collection_minimum_balance",
      "collection_trustline",
      "height",
      "indexing"
    ],
    "xrp": [
      "collection_balance",
      "height",
      "indexing"
    ],
    "xtz": [
      "collection_balance",
      "collection_fa_token_balance",
      "collection_revelation",
      "collection_stake",
      "height",
      "indexing"
    ]
  }
}

Jobs perform component health checks and produce health reports. For any of these endpoints, you can get those common values:

  • "componentName": name of the component
  • "componentId": unique ID for the component (can be retrieved from the logs)
  • "group": group to whom the healthcheck belongs to, generally a blockchain
  • "healthCheck": type of health check
  • "status": status of the executed call
  • "report":
    • "name": group name
    • "status": status of the executed call
    • “msg”: an output message of the health check call
    • “duration": duration of the call
  • "lastUpdateDate": when was the health check executed
  • "validUntilDate": until when this health check will be valid.

Get Explorers health check list

Description : Performs a complete health check on Explorers.

curl --location "https://explorers.t-dx.com/api/rest/v1/health/all"

{
  "b2da5a7e-49a5-4c03-9469-7428d0df7dd8": {
    "ada": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ada",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 10901922 - transition: 10901922 - state: 10901921",
          "duration": "15.656263ms"
        },
        "last_updated": "2024-09-30T12:26:58.160705Z",
        "valid_until": "2024-09-30T12:27:58.160705Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ada",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 10901922 - stored = 10901922",
          "duration": "3.276187ms"
        },
        "last_updated": "2024-09-30T12:26:58.100408Z",
        "valid_until": "2024-09-30T12:27:58.100408Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ada",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:28.302769 +0000 UTC",
          "duration": "2.924119ms"
        },
        "last_updated": "2024-09-30T12:26:58.219418Z",
        "valid_until": "2024-09-30T12:27:58.219418Z"
      }
    ],
    "algo": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "algo",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 43015433 - transition: 43015433 - state: 43015423",
          "duration": "7.954013ms"
        },
        "last_updated": "2024-09-30T12:26:58.122214Z",
        "valid_until": "2024-09-30T12:27:58.122214Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "algo",
        "health_check": "collection_optin",
        "status": "success",
        "report": {
          "name": "collection_optin",
          "status": "success",
          "msg": "origin: 43015433 - transition: 43015433 - state: 43015423",
          "duration": "9.873035ms"
        },
        "last_updated": "2024-09-30T12:26:58.029549Z",
        "valid_until": "2024-09-30T12:27:58.029549Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "algo",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 43015444 - stored = 43015433",
          "duration": "6.895481ms"
        },
        "last_updated": "2024-09-30T12:26:58.06287Z",
        "valid_until": "2024-09-30T12:27:58.06287Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "algo",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:58.25241 +0000 UTC",
          "duration": "5.644487ms"
        },
        "last_updated": "2024-09-30T12:26:58.259502Z",
        "valid_until": "2024-09-30T12:27:58.259502Z"
      }
    ],
    "avalanche-c": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 51185876 - transition: 51185876 - state: 51185862",
          "duration": "9.889193ms"
        },
        "last_updated": "2024-09-30T12:26:59.324761Z",
        "valid_until": "2024-09-30T12:27:59.324761Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c",
        "health_check": "collection_erc_token_balance",
        "status": "success",
        "report": {
          "name": "collection_erc_token_balance",
          "status": "success",
          "msg": "origin: 51185876 - transition: 51185876 - state: 51185862",
          "duration": "7.891583ms"
        },
        "last_updated": "2024-09-30T12:26:59.235297Z",
        "valid_until": "2024-09-30T12:27:59.235297Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 51185876 - stored = 51185876",
          "duration": "3.167969ms"
        },
        "last_updated": "2024-09-30T12:26:59.262947Z",
        "valid_until": "2024-09-30T12:27:59.262947Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:58.849936 +0000 UTC",
          "duration": "2.616072ms"
        },
        "last_updated": "2024-09-30T12:26:59.533744Z",
        "valid_until": "2024-09-30T12:27:59.533744Z"
      }
    ],
    "avalanche-c_erc": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c_erc",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 51185876 - stored = 51185876",
          "duration": "2.475927ms"
        },
        "last_updated": "2024-09-30T12:26:59.578089Z",
        "valid_until": "2024-09-30T12:27:59.578089Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "avalanche-c_erc",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:58.849936 +0000 UTC",
          "duration": "3.016761ms"
        },
        "last_updated": "2024-09-30T12:26:59.338591Z",
        "valid_until": "2024-09-30T12:27:59.338591Z"
      }
    ],
    "bch": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "bch",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 865706 - stored = 865706",
          "duration": "3.880846ms"
        },
        "last_updated": "2024-09-30T12:26:59.258405Z",
        "valid_until": "2024-09-30T12:27:59.258405Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "bch",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 10:50:30.428415 +0000 UTC",
          "duration": "2.370063ms"
        },
        "last_updated": "2024-09-30T12:26:59.22003Z",
        "valid_until": "2024-09-30T12:27:59.22003Z"
      }
    ],
    "btc": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "btc",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 863493 - stored = 863493",
          "duration": "2.539463ms"
        },
        "last_updated": "2024-09-30T12:26:59.310171Z",
        "valid_until": "2024-09-30T12:27:59.310171Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "btc",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:25:09.704364 +0000 UTC",
          "duration": "2.541993ms"
        },
        "last_updated": "2024-09-30T12:26:59.327878Z",
        "valid_until": "2024-09-30T12:27:59.327878Z"
      }
    ],
    "cosmos": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "cosmos",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 22412980 - transition: 22412975 - state: 22412973",
          "duration": "11.952833ms"
        },
        "last_updated": "2024-09-30T12:26:59.374556Z",
        "valid_until": "2024-09-30T12:27:59.374556Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "cosmos",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 22412980 - transition: 22412977 - state: 22412975",
          "duration": "21.55858ms"
        },
        "last_updated": "2024-09-30T12:26:59.5915Z",
        "valid_until": "2024-09-30T12:27:59.5915Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "cosmos",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 22412991 - stored = 22412979",
          "duration": "9.94614ms"
        },
        "last_updated": "2024-09-30T12:26:59.133378Z",
        "valid_until": "2024-09-30T12:27:59.133378Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "cosmos",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:59.18444 +0000 UTC",
          "duration": "2.51862ms"
        },
        "last_updated": "2024-09-30T12:26:59.273108Z",
        "valid_until": "2024-09-30T12:27:59.273108Z"
      }
    ],
    "dot": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "dot",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 22761581 - transition: 22761579 - state: 22761579",
          "duration": "7.747732ms"
        },
        "last_updated": "2024-09-30T12:26:59.562101Z",
        "valid_until": "2024-09-30T12:27:59.562101Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "dot",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 22761579 - transition: 22761579 - state: 22761579",
          "duration": "7.680209ms"
        },
        "last_updated": "2024-09-30T12:26:59.272951Z",
        "valid_until": "2024-09-30T12:27:59.272951Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "dot",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 22761583 - stored = 22761580",
          "duration": "2.312038ms"
        },
        "last_updated": "2024-09-30T12:26:59.349798Z",
        "valid_until": "2024-09-30T12:27:59.349798Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "dot",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:30.090885 +0000 UTC",
          "duration": "2.558285ms"
        },
        "last_updated": "2024-09-30T12:26:59.136904Z",
        "valid_until": "2024-09-30T12:27:59.136904Z"
      }
    ],
    "erc20": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "erc20",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 20863460 - stored = 20863459",
          "duration": "4.781924ms"
        },
        "last_updated": "2024-09-30T12:26:30.24858Z",
        "valid_until": "2024-09-30T12:27:30.24858Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "erc20",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:30.480647 +0000 UTC",
          "duration": "2.447337ms"
        },
        "last_updated": "2024-09-30T12:26:30.582879Z",
        "valid_until": "2024-09-30T12:27:30.582879Z"
      }
    ],
    "eth": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "eth",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 20863461 - transition: 20863461 - state: 20863460",
          "duration": "10.483733ms"
        },
        "last_updated": "2024-09-30T12:27:00.335115Z",
        "valid_until": "2024-09-30T12:28:00.335115Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "eth",
        "health_check": "collection_erc_token_balance",
        "status": "success",
        "report": {
          "name": "collection_erc_token_balance",
          "status": "success",
          "msg": "origin: 20863460 - transition: 20863459 - state: 20863457",
          "duration": "15.386944ms"
        },
        "last_updated": "2024-09-30T12:26:30.644785Z",
        "valid_until": "2024-09-30T12:27:30.644785Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "eth",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 20863460 - stored = 20863460",
          "duration": "2.376784ms"
        },
        "last_updated": "2024-09-30T12:26:30.535317Z",
        "valid_until": "2024-09-30T12:27:30.535317Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "eth",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:18.535741 +0000 UTC",
          "duration": "2.36082ms"
        },
        "last_updated": "2024-09-30T12:26:30.175286Z",
        "valid_until": "2024-09-30T12:27:30.175286Z"
      }
    ],
    "ftm": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ftm",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 93124151 - transition: 93124151 - state: 93124148",
          "duration": "23.693207ms"
        },
        "last_updated": "2024-09-30T12:26:30.331884Z",
        "valid_until": "2024-09-30T12:27:30.331884Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ftm",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 93124159 - transition: 93124151 - state: 93124151",
          "duration": "10.982365ms"
        },
        "last_updated": "2024-09-30T12:26:30.646231Z",
        "valid_until": "2024-09-30T12:27:30.646231Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ftm",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 93124186 - stored = 93124151",
          "duration": "7.942245ms"
        },
        "last_updated": "2024-09-30T12:26:30.214153Z",
        "valid_until": "2024-09-30T12:27:30.214153Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ftm",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:03.028899 +0000 UTC",
          "duration": "3.313742ms"
        },
        "last_updated": "2024-09-30T12:26:30.190341Z",
        "valid_until": "2024-09-30T12:27:30.190341Z"
      }
    ],
    "icp": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "icp",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 14622892 - transition: 14622892 - state: 14622888",
          "duration": "7.543388ms"
        },
        "last_updated": "2024-09-30T12:26:31.463355Z",
        "valid_until": "2024-09-30T12:27:31.463355Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "icp",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 14622893 - stored = 14622892",
          "duration": "48.001043ms"
        },
        "last_updated": "2024-09-30T12:26:31.074633Z",
        "valid_until": "2024-09-30T12:27:31.074633Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "icp",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:17.6752 +0000 UTC",
          "duration": "4.839778ms"
        },
        "last_updated": "2024-09-30T12:26:31.412959Z",
        "valid_until": "2024-09-30T12:27:31.412959Z"
      }
    ],
    "kichain": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "kichain",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 22912203 - transition: 22912200 - state: 22912199",
          "duration": "16.285997ms"
        },
        "last_updated": "2024-09-30T12:26:59.16506Z",
        "valid_until": "2024-09-30T12:27:59.16506Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "kichain",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 22912203 - transition: 22912200 - state: 22912197",
          "duration": "11.613437ms"
        },
        "last_updated": "2024-09-30T12:26:59.308364Z",
        "valid_until": "2024-09-30T12:27:59.308364Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "kichain",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 22912216 - stored = 22912203",
          "duration": "40.424513ms"
        },
        "last_updated": "2024-09-30T12:26:59.343433Z",
        "valid_until": "2024-09-30T12:27:59.343433Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "kichain",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:44.737035 +0000 UTC",
          "duration": "1.414255ms"
        },
        "last_updated": "2024-09-30T12:26:59.331987Z",
        "valid_until": "2024-09-30T12:27:59.331987Z"
      }
    ],
    "ltc": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ltc",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 2765292 - stored = 2765292",
          "duration": "2.624092ms"
        },
        "last_updated": "2024-09-30T12:27:00.334233Z",
        "valid_until": "2024-09-30T12:28:00.334233Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "ltc",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:24:35.647494 +0000 UTC",
          "duration": "1.602564ms"
        },
        "last_updated": "2024-09-30T12:26:30.546518Z",
        "valid_until": "2024-09-30T12:27:30.546518Z"
      }
    ],
    "near": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "near",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 128749904 - transition: 128749904 - state: 128749904",
          "duration": "15.459927ms"
        },
        "last_updated": "2024-09-30T12:26:31.508135Z",
        "valid_until": "2024-09-30T12:27:31.508135Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "near",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 128749904 - transition: 128749904 - state: 128749904",
          "duration": "12.667665ms"
        },
        "last_updated": "2024-09-30T12:26:31.457431Z",
        "valid_until": "2024-09-30T12:27:31.457431Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "near",
        "health_check": "height",
        "status": "failure",
        "report": {
          "name": "height",
          "status": "failure",
          "msg": "too many blocks of difference: head = 129237050 - stored = 128749904",
          "duration": "0s"
        },
        "last_updated": "2024-09-30T12:26:31.430092Z",
        "valid_until": "2024-09-30T12:27:31.430092Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "near",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "duration": "11.857661ms"
        },
        "last_updated": "2024-09-30T12:26:31.426406Z",
        "valid_until": "2024-09-30T12:27:31.426406Z"
      }
    ],
    "polygon": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 62460466 - transition: 62460466 - state: 62460466",
          "duration": "8.811681ms"
        },
        "last_updated": "2024-09-30T12:26:31.470069Z",
        "valid_until": "2024-09-30T12:27:31.470069Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon",
        "health_check": "collection_erc_token_balance",
        "status": "success",
        "report": {
          "name": "collection_erc_token_balance",
          "status": "success",
          "msg": "origin: 62460466 - transition: 62460466 - state: 62460466",
          "duration": "13.42405ms"
        },
        "last_updated": "2024-09-30T12:26:31.434027Z",
        "valid_until": "2024-09-30T12:27:31.434027Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 62460474 - stored = 62460466",
          "duration": "2.856134ms"
        },
        "last_updated": "2024-09-30T12:26:31.539436Z",
        "valid_until": "2024-09-30T12:27:31.539436Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:03.995027 +0000 UTC",
          "duration": "5.543636ms"
        },
        "last_updated": "2024-09-30T12:26:31.184084Z",
        "valid_until": "2024-09-30T12:27:31.184084Z"
      }
    ],
    "polygon_erc20": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon_erc20",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 62460474 - stored = 62460466",
          "duration": "3.258594ms"
        },
        "last_updated": "2024-09-30T12:26:31.436623Z",
        "valid_until": "2024-09-30T12:27:31.436623Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "polygon_erc20",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:03.995027 +0000 UTC",
          "duration": "3.439443ms"
        },
        "last_updated": "2024-09-30T12:26:31.158233Z",
        "valid_until": "2024-09-30T12:27:31.158233Z"
      }
    ],
    "sol": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "sol",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 292885767 - transition: 292885743 - state: 292885741",
          "duration": "17.642318ms"
        },
        "last_updated": "2024-09-30T12:26:30.479322Z",
        "valid_until": "2024-09-30T12:27:30.479322Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "sol",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 292885816 - stored = 292885767",
          "duration": "25.019604ms"
        },
        "last_updated": "2024-09-30T12:26:30.460048Z",
        "valid_until": "2024-09-30T12:27:30.460048Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "sol",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:47.565476 +0000 UTC",
          "duration": "3.714135ms"
        },
        "last_updated": "2024-09-30T12:27:00.012641Z",
        "valid_until": "2024-09-30T12:28:00.012641Z"
      }
    ],
    "xlm": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "collection_address_flags",
        "status": "success",
        "report": {
          "name": "collection_address_flags",
          "status": "success",
          "msg": "origin: 53731525 - transition: 53731525 - state: 53731520",
          "duration": "33.488651ms"
        },
        "last_updated": "2024-09-30T12:26:30.393913Z",
        "valid_until": "2024-09-30T12:27:30.393913Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 53731531 - transition: 53731528 - state: 53731528",
          "duration": "10.430458ms"
        },
        "last_updated": "2024-09-30T12:27:00.348572Z",
        "valid_until": "2024-09-30T12:28:00.348572Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "collection_minimum_balance",
        "status": "success",
        "report": {
          "name": "collection_minimum_balance",
          "status": "success",
          "msg": "origin: 53731526 - transition: 53731525 - state: 53731523",
          "duration": "10.073337ms"
        },
        "last_updated": "2024-09-30T12:26:30.656785Z",
        "valid_until": "2024-09-30T12:27:30.656785Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "collection_trustline",
        "status": "success",
        "report": {
          "name": "collection_trustline",
          "status": "success",
          "msg": "origin: 53731525 - transition: 53731523 - state: 53731523",
          "duration": "13.985482ms"
        },
        "last_updated": "2024-09-30T12:26:30.527125Z",
        "valid_until": "2024-09-30T12:27:30.527125Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 53731528 - stored = 53731525",
          "duration": "3.158331ms"
        },
        "last_updated": "2024-09-30T12:26:30.489839Z",
        "valid_until": "2024-09-30T12:27:30.489839Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xlm",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:15.850239 +0000 UTC",
          "duration": "1.453988ms"
        },
        "last_updated": "2024-09-30T12:26:30.270571Z",
        "valid_until": "2024-09-30T12:27:30.270571Z"
      }
    ],
    "xrp": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xrp",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 91101537 - transition: 91101532 - state: 91101530",
          "duration": "10.108787ms"
        },
        "last_updated": "2024-09-30T12:26:31.449387Z",
        "valid_until": "2024-09-30T12:27:31.449387Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xrp",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 91101537 - stored = 91101537",
          "duration": "2.362041ms"
        },
        "last_updated": "2024-09-30T12:26:31.452989Z",
        "valid_until": "2024-09-30T12:27:31.452989Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xrp",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:30.591544 +0000 UTC",
          "duration": "2.191931ms"
        },
        "last_updated": "2024-09-30T12:26:31.515733Z",
        "valid_until": "2024-09-30T12:27:31.515733Z"
      }
    ],
    "xtz": [
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "collection_balance",
        "status": "success",
        "report": {
          "name": "collection_balance",
          "status": "success",
          "msg": "origin: 6727915 - transition: 6727915 - state: 6727915",
          "duration": "7.677945ms"
        },
        "last_updated": "2024-09-30T12:26:31.506351Z",
        "valid_until": "2024-09-30T12:27:31.506351Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "collection_fa_token_balance",
        "status": "success",
        "report": {
          "name": "collection_fa_token_balance",
          "status": "success",
          "msg": "origin: 6727915 - transition: 6727915 - state: 6727915",
          "duration": "8.730518ms"
        },
        "last_updated": "2024-09-30T12:26:31.539769Z",
        "valid_until": "2024-09-30T12:27:31.539769Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "collection_revelation",
        "status": "success",
        "report": {
          "name": "collection_revelation",
          "status": "success",
          "msg": "origin: 6727915 - transition: 6727915 - state: 6727915",
          "duration": "13.22616ms"
        },
        "last_updated": "2024-09-30T12:26:31.555236Z",
        "valid_until": "2024-09-30T12:27:31.555236Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "collection_stake",
        "status": "success",
        "report": {
          "name": "collection_stake",
          "status": "success",
          "msg": "origin: 6727915 - transition: 6727915 - state: 6727915",
          "duration": "7.554799ms"
        },
        "last_updated": "2024-09-30T12:26:31.527513Z",
        "valid_until": "2024-09-30T12:27:31.527513Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "height",
        "status": "success",
        "report": {
          "name": "height",
          "status": "success",
          "msg": "head = 6727918 - stored = 6727915",
          "duration": "3.97178ms"
        },
        "last_updated": "2024-09-30T12:26:31.297507Z",
        "valid_until": "2024-09-30T12:27:31.297507Z"
      },
      {
        "component_name": "tg-blocksd",
        "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",
        "group": "xtz",
        "health_check": "indexing",
        "status": "success",
        "report": {
          "name": "indexing",
          "status": "success",
          "msg": "last block inserted: 2024-09-30 12:26:03.242311 +0000 UTC",
          "duration": "2.235673ms"
        },
        "last_updated": "2024-09-30T12:26:31.483913Z",
        "valid_until": "2024-09-30T12:27:31.483913Z"
      }
    ]
  }
}

Get Explorers health checks for a specific group

Description: Performs a health check on a specific group of monitored activities.

Example with FANTOM group:

curl --location "https://explorers.t-dx.com/api/rest/v1/health/ftm" \

[
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "ftm",
    "health_check": "collection_balance",
    "status": "success",
    "report": {
      "name": "collection_balance",
      "status": "success",
      "msg": "origin: 93125974 - transition: 93125960 - state: 93125954",
      "duration": "125.03325ms"
    },
    "last_updated": "2024-09-30T12:51:29.565395Z",
    "valid_until": "2024-09-30T12:52:29.565395Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "ftm",
    "health_check": "collection_stake",
    "status": "success",
    "report": {
      "name": "collection_stake",
      "status": "success",
      "msg": "origin: 93125974 - transition: 93125964 - state: 93125957",
      "duration": "53.552833ms"
    },
    "last_updated": "2024-09-30T12:51:29.60308Z",
    "valid_until": "2024-09-30T12:52:29.60308Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "ftm",
    "health_check": "height",
    "status": "success",
    "report": {
      "name": "height",
      "status": "success",
      "msg": "tg-blocksd: 93125974 - node: 93125976",
      "duration": "5.141143ms"
    },
    "last_updated": "2024-09-30T12:51:29.589367Z",
    "valid_until": "2024-09-30T12:52:29.589367Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "ftm",
    "health_check": "indexing",
    "status": "success",
    "report": {
      "name": "indexing",
      "status": "success",
      "msg": "last block inserted: 2024-09-30 12:51:29.390029 +0000 UTC",
      "duration": "162.893874ms"
    },
    "last_updated": "2024-09-30T12:51:29.572097Z",
    "valid_until": "2024-09-30T12:52:29.572097Z"
  }
]

Another example with Polkadot group:

Description: Performs a health check on a specific blockchain of monitored activities:

  • block height
  • collection balance
  • staking collection balance
  • indexing: when was the last inserted block

curl --location "https://explorers.t-dx.com/api/rest/v1/health/dot" \

[
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "dot",
    "health_check": "collection_balance",
    "status": "success",
    "report": {
      "name": "collection_balance",
      "status": "success",
      "msg": "origin: 22761846 - transition: 22761845 - state: 22761844",
      "duration": "9.259814ms"
    },
    "last_updated": "2024-09-30T12:53:30.396071Z",
    "valid_until": "2024-09-30T12:54:30.396071Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "dot",
    "health_check": "collection_stake",
    "status": "success",
    "report": {
      "name": "collection_stake",
      "status": "success",
      "msg": "origin: 22761846 - transition: 22761846 - state: 22761844",
      "duration": "22.802164ms"
    },
    "last_updated": "2024-09-30T12:53:30.372645Z",
    "valid_until": "2024-09-30T12:54:30.372645Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "dot",
    "health_check": "height",
    "status": "success",
    "report": {
      "name": "height",
      "status": "success",
      "msg": "tg-blocksd: 22761846 - node: 22761844",
      "duration": "5.628137ms"
    },
    "last_updated": "2024-09-30T12:53:30.440603Z",
    "valid_until": "2024-09-30T12:54:30.440603Z"
  },
  {
    "component_name": "tg-blocksd",
    "component_id": "fea89272-125e-4108-aa78-2153bf11e6c7",
    "group": "dot",
    "health_check": "indexing",
    "status": "success",
    "report": {
      "name": "indexing",
      "status": "success",
      "msg": "last block inserted: 2024-09-30 12:53:26.734433 +0000 UTC",
      "duration": "3.190728ms"
    },
    "last_updated": "2024-09-30T12:53:30.238531Z",
    "valid_until": "2024-09-30T12:54:30.238531Z"
  }
]

Get Explorers health checks for a specific chain

Description: Performs a specific health check on a chosen chain.

Example with Cardano:

curl --location "https://explorers.t-dx.com/api/rest/v1/health/ada/height" \

{  
  "component_name": "tg-blocksd",  
  "component_id": "b2da5a7e-49a5-4c03-9469-7428d0df7dd8",  
  "group": "ada",  
  "health_check": "height",  
  "status": "success",  
  "report": {  
    "name": "height",  
    "status": "success",  
    "msg": "head = 10901302 - stored = 10901302",  
    "duration": "31.398357ms"  
  },  
  "last_updated": "2024-09-30T08:49:28.099174Z",  
  "valid_until": "2024-09-30T08:50:28.099174Z"  
}


  © 2018-2023 Taurus SA. All rights reserved.