injective-trading-staking
Installation
SKILL.md
Injective Trading Staking, Skill Guide
Query Injective staking data via LCD REST API. Covers delegations, rewards, validators, and unbonding. Useful for treasury dashboards, staker audits, and validator monitoring.
When to apply
Sample prompts: ./references/sample-prompts.md
Important
Endpoints
All endpoints use Injective LCD REST API:
- Mainnet:
https://lcd.injective.network - Testnet:
https://testnet.sentry.lcd.injective.network:443
Key Facts
- Decimals:
- All amounts in
injdenom use 1e18 (like ETH wei)
- All amounts in
- Unbonding period:
- 21 days on Injective mainnet
- Rewards:
- Must be claimed via
MsgWithdrawDelegatorReward. - Track claimed vs accrued separately
- Must be claimed via
- Delegation shares:
- Not 1:1 with tokens.
- Use
validator.tokens / validator.delegator_sharesratio
- Slashing:
- Check
signing_infosfor validator jail status
- Check
Activities
Query Delegations for an Address
GET /cosmos/staking/v1beta1/delegations/{delegator_addr}
Returns all active delegations with validator address and shares.
Query Delegation to Specific Validator
GET /cosmos/staking/v1beta1/validators/{validator_addr}/delegations/{delegator_addr}
Query Unbonding Delegations
GET /cosmos/staking/v1beta1/delegators/{delegator_addr}/unbonding_delegations
Query Staking Rewards
GET /cosmos/distribution/v1beta1/delegators/{delegator_addr}/rewards
Returns pending (unclaimed) rewards per validator and total.
Query Validators
GET /cosmos/staking/v1beta1/validators?status=BOND_STATUS_BONDED&pagination.limit=100
Query Single Validator
GET /cosmos/staking/v1beta1/validators/{validator_addr}
Query Staking Parameters
GET /cosmos/staking/v1beta1/params
Returns unbonding time, max validators, bond denom (inj).
Check pending rewards
GET "https://lcd.injective.network/cosmos/distribution/v1beta1/delegators/inj1.../rewards"
Check total staked INJ for a wallet
curl -s "https://lcd.injective.network/cosmos/staking/v1beta1/delegations/inj1..." | python3 -c "
import json, sys
data = json.load(sys.stdin)
total = sum(int(d['balance']['amount']) for d in data.get('delegation_responses', []))
print(f'{total / 1e18:.2f} INJ staked')
"
Find all stakers with > N INJ delegated
Use the archival node endpoints for historical queries:
- Tendermint RPC:
https://tm.injective.network:443 - LCD REST:
https://lcd.injective.network - gRPC:
grpc.injective.network:443
Query validators first. Then iterate delegations per validator. Note: Pagination required (default limit 100).
Get delegations
This uses the injective-py SDK.
from pyinjective.async_client import AsyncClient
from pyinjective.core.network import Network
async def get_delegations(address: str):
network = Network.mainnet()
client = AsyncClient(network)
delegations = await client.fetch_delegations(delegator_addr=address)
return delegations
Related skills
None
Prerequisites
curlinstalled- for some of these actions:
pythoninstalled
Weekly Installs
4
Repository
injectivelabs/a…t-skillsGitHub Stars
3
First Seen
Mar 21, 2026
Security Audits