Endpoints
API Usage
Once you have access to the Staking API with a validated user and existing API keys, you can start using this service.
Try it live
Every endpoint on this page can be executed from the interactive Swagger console, using your own X-API-KEY.
The machine-readable OpenAPI schema is available at:
Authentication
In order to use the Staking API endpoints you need to include your API KEY.
Heads up! To obtain a valid API key required for authentication, please refer to the Authentication > Create API keys section of the documentation.
Header:
| Name | Description | Example value | Required |
|---|---|---|---|
X-API-KEY | Your api key value | <API_KEY_VALUE> | ✅ |
X-NETWORK | Blockchain network identifier | 143 | ⚪ |
X-IDENTITY | Caller-defined identity stored in the audit log | user-1234 | ⚪ |
X-NETWORK header
Use the X-NETWORK header to select the Monad network (currently 143 for Monad Mainnet).
If you omit the header the API falls back to the default Monad network configured for your account.
X-IDENTITY header
Use the X-IDENTITY header to attribute a request to the end user or account acting through your integration. The value is caller-defined and is stored with the request in the audit log, so activity can be traced back to it later.
The header is optional and does not change the response. Prefer an opaque internal identifier such as a user ID or account reference over personal data like emails or names. If you omit it, the request is attributed only to your API key.
List available networks
Use this helper endpoint to obtain the list of Monad Magma networks that are currently enabled for your API key.
- Endpoint:
/api/v1/monad/magma/networks
Response payload fields:
| Field | Type | Required | Description |
|---|---|---|---|
name | string | ✅ | Internal blockchain entry name |
type | string | ✅ | Blockchain type string (always ETHEREUM) |
chain_id | string | ✅ | Chain identifier (currently 143) |
is_default | boolean | ✅ | true when this network is used as fallback |
Example
curl "https://staking-api.stakely.io/api/v1/monad/magma/networks" \
-H "X-API-KEY: $STAKELY_API_KEY" \
-H "X-NETWORK: 143"
Response:
[
{
"name": "monad",
"type": "ETHEREUM",
"chain_id": "143",
"is_default": true
}
]
Staking information
Get the staking parameters of this protocol:
- Endpoint:
/api/v1/monad/magma/staking-info
Description
Staking parameters for Magma on Monad: activation, deactivation and withdrawal times in minutes, fees, current APR/APY, slashing risk and stake limits. Served from an in-memory snapshot refreshed hourly.
Returned
| Field | Type | Required | Description |
|---|---|---|---|
stake_activation_max_time | number | ✅ | Maximum time, in minutes, for a new stake to become active and start accruing rewards. 0 means it is effective immediately. |
stake_deactivation_max_time | number | ✅ | Maximum time, in minutes, for an unstake request to complete the unbonding/exit period. 0 means the stake is released immediately. |
withdrawal_max_time | number | ✅ | Maximum time, in minutes, between a completed deactivation and the funds being spendable again. 0 means the funds are available as soon as the deactivation completes. |
staking_reward_fee | number | ✅ | Aggregate fee charged on staking rewards, as a percentage of the rewards generated (validator commission plus any protocol fee). |
withdrawal_fee | number | ✅ | Fee charged when withdrawing the stake, as a percentage of the withdrawn amount. Network transaction (gas) costs are not included. |
staking_apr | number | ✅ | Current annual percentage rate (rewards without compounding), as a percentage. |
staking_apy | number | ✅ | Current annual percentage yield (rewards with compounding), as a percentage. |
max_slashing_percentage | number | ✅ | Maximum percentage of the staked amount that the protocol can slash. 0 means the protocol implements no slashing. |
min_stake_amount | string | ✅ | Minimum amount that can be staked, as a decimal string in the native token of the chain. |
max_stake_amount | string | ✅ | Maximum amount that can be staked, as a decimal string in the native token of the chain. null means the protocol enforces no upper limit. |
users | number | ✅ | Number of addresses currently staking with Stakely on this chain. Live figure, refreshed hourly. null on protocol-scoped endpoints (liquid staking, vaults), because the feed only publishes this per chain and the chain-wide figure is not that protocol's. |
tvl_usd | number | ✅ | Total value staked with Stakely on this chain, in USD. Live figure, refreshed hourly. null on protocol-scoped endpoints, for the same reason as users. |
tvl_token | number | ✅ | Total value staked with Stakely on this chain, in the native token of the chain. Live figure, refreshed hourly. null on protocol-scoped endpoints, for the same reason as users. |
Example
curl "https://staking-api.stakely.io/api/v1/monad/magma/staking-info" \
-H "X-API-KEY: $STAKELY_API_KEY" \
-H "X-NETWORK: 143"
Response:
{
"stake_activation_max_time": 0,
"stake_deactivation_max_time": null,
"withdrawal_max_time": 0,
"staking_reward_fee": 5,
"withdrawal_fee": 0.1,
"staking_apr": 14.65,
"staking_apy": 15.77,
"max_slashing_percentage": 0,
"min_stake_amount": "100",
"max_stake_amount": null,
"users": null,
"tvl_usd": null,
"tvl_token": null
}
Delegate action
Craft a Magma delegate transaction:
- Endpoint:
/api/v1/monad/magma/action/delegate
Description
This endpoint crafts a Magma delegate transaction ready to be signed.
Request body parameters
| Field | Type | Required | Description |
|---|---|---|---|
address | string |