Nodit Web3 Data API Skill

Use this skill to run Nodit Web3 Data API operations through uxc + OpenAPI.

Reuse the uxc skill for shared execution, auth, and error-handling guidance.

Prerequisites

Scope

This skill covers a read-first Nodit Web3 Data API surface:

This skill does not cover:

Authentication

Nodit uses X-API-KEY header auth.

Configure one API-key credential and bind it to web3.nodit.io:

uxc auth credential set nodit \
  --auth-type api_key \
  --api-key-header X-API-KEY \
  --secret-env NODIT_API_KEY

uxc auth binding add \
  --id nodit \
  --host web3.nodit.io \
  --scheme https \
  --credential nodit \
  --priority 100

Validate the active mapping when auth looks wrong:

uxc auth binding match https://web3.nodit.io

Core Workflow

  1. Use the fixed link command by default:

    • command -v nodit-openapi-cli
    • If missing, create it: uxc link nodit-openapi-cli https://web3.nodit.io --schema-url https://raw.githubusercontent.com/holon-run/uxc/main/skills/nodit-openapi-skill/references/nodit-web3.openapi.json
    • nodit-openapi-cli -h
  2. Inspect operation schema first:

    • nodit-openapi-cli post:/v1/multichain/lookupEntities -h
    • nodit-openapi-cli post:/v1/{chain}/{network}/native/getNativeBalanceByAccount -h
    • nodit-openapi-cli post:/v1/{chain}/{network}/token/getTokenPricesByContracts -h
  3. Prefer narrow reads before broader crawls:

    • nodit-openapi-cli post:/v1/multichain/lookupEntities input=near
    • nodit-openapi-cli post:/v1/{chain}/{network}/native/getNativeBalanceByAccount chain=ethereum network=mainnet accountAddress=0xd8da6bf26964af9d7eed9e03e53415d37aa96045
    • nodit-openapi-cli post:/v1/{chain}/{network}/token/getTokenContractMetadataByContracts chain=ethereum network=mainnet contractAddresses:='[\"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48\"]'

If lookupEntities returns HTTP 429 TOO_MANY_REQUESTS, treat it as a plan/tier rate-limit signal rather than an auth failure. Back off and continue with chain-specific reads when you already know the target network.

  1. Execute with key/value parameters:
    • nodit-openapi-cli post:/v1/{chain}/{network}/token/getTokenPricesByContracts chain=ethereum network=mainnet contractAddresses:='[\"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48\"]'
    • nodit-openapi-cli post:/v1/{chain}/{network}/blockchain/getTransactionsByAccount chain=ethereum network=mainnet accountAddress=0xd8da6bf26964af9d7eed9e03e53415d37aa96045 limit=20

Operation Groups

Discovery

Account And Token Reads

Guardrails

References