figment api.yaml

--- openapi: 3.1.0 info: title: Figment API version: 2.0.0+1174.1 termsOfService: https://figment.io/staking-terms-of-use x-readme: explorer-enabled: false proxy-enabled: false headers: - key: x-api-key value: your-api-key-here paths: "/ethereum/validators": post: summary: Create Validators tags: - Ethereum operationId: create-validators parameters: [] responses: '201': description: Created validators content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/validator_provision_response" meta: "$ref": "#/components/schemas/validators_create_meta" example: data: - network: hoodi pubkey: '0x8fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad' status: provisioned withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' region: ca-central-1 deposit_data: deposit_data_root: '0xfd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4b' deposit_message_root: '0xae8ccf82724a48014e7f694c3ee329210e435059d73a4fa4da2bcd825ced381e' fork_version: '0x01017000' signature: '0x802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a29' figment_signature: '0x308188024200e8a18a258b03149255a0fc4a62a6c51b99ce38c8a33b91b57d76ca1f37484a18d1efa2c2bc6182ad284ff8aad076248f27af179c0b86a6542fa67185aa1cc9f50e02420147dacbaf9cdae0638d44b824f199d9f8047d5eb9ae4ee3dfe9d1860ba7582ac4be464d46647d7ed3adac83789ec88f2b6d4ac426d90126076589291d83735c63a3' deposit_cli_version: 2.7.0 amount: 32000000000 status_history: events: - status: provisioned changed_at: '2024-02-22T14:14:07.848Z' status_estimates: estimated_active_at: estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: staking_request: id: f9764269-ddb8-451f-9f81-fd460e3e2f14 created_at: '2024-02-22T14:14:07.848Z' meta: staking_request: id: f9764269-ddb8-451f-9f81-fd460e3e2f14 created_at: '2024-02-22T14:14:07.848Z' amount_wei: '32000000000000000000' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' network: hoodi region: ca-central-1 staking_transaction: from: '0xE40F80618324C814cD444434670a44ba4583aE38' to: '0xA627f94a8F94E4713d38F52aC3a6377B0a111d47' amount_wei: '32000000000000000000' contract_call_data: '0x4f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a290000000000000000000000000000000000000000000000000000000000000001fd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4b' unsigned_transaction_hashed: '0x3ac39ee1d324ed9816a8de4fc5f41d071bb2e522bac1fa9ea85684f6911977c4' unsigned_transaction_serialized: '0x02f902d9824268058459682f0084ce33ae928305dc8f94a627f94a8f94e4713d38f52ac3a6377b0a111d478901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a290000000000000000000000000000000000000000000000000000000000000001fd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4bc0' max_gas_wei: '1328940220021646' '400': description: Bad request content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Unprocessable entity content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: oneOf: - type: object title: 0x01 Validators properties: network: type: string example: hoodi enum: - mainnet - hoodi description: The network on which validators will be created. validators_count: type: integer example: 10 description: The number of validators that need to be created. withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address used for the withdrawals credentials of the validators. This is the address that will receive consensus rewards and unstaked ETH after exiting. funding_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that holds the ETH to be staked and that will sign the staking transaction. If not specified, `withdrawal_address` will be used. fee_recipient_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that will receive the execution layer rewards. If not specified, `withdrawal_address` will be used. region: type: string example: ca-central-1 description: The geographic region where the validator will be created. enum: - ca-central-1 - eu-west-1 credentials_prefix: type: string example: '0x01' description: Prefix to use for withdrawal_credentials. Defaults to '0x01'. enum: - '0x01' required: - network - withdrawal_address - validators_count - type: object title: 0x02 Validators (Pectra) properties: network: type: string example: hoodi enum: - mainnet - hoodi description: The network on which validators will be created. amount: type: integer example: 64 description: Amount in ETH to initially deposit to the validator. withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address used for the withdrawals credentials of the validators. This is the address that will receive consensus rewards and unstaked ETH after exiting. funding_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that holds the ETH to be staked and that will sign the staking transaction. If not specified, `withdrawal_address` will be used. fee_recipient_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that will receive the execution layer rewards. If not specified, `withdrawal_address` will be used. region: type: string example: ca-central-1 description: The geographic region where the validator will be created. enum: - ca-central-1 - eu-west-1 credentials_prefix: type: string example: '0x01' description: Prefix to use for withdrawal_credentials. Defaults to '0x01'. enum: - '0x02' required: - network - withdrawal_address - credentials_prefix - amount get: summary: Get Validators tags: - Ethereum operationId: get-validators parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: withdrawal_address in: query required: false schema: type: string description: The validator's withdrawal address. Must be prefixed with `0x`. example: '0xE40F80618324C814cD444434670a44ba4583aE38' - name: groups in: query required: false schema: type: string description: Filter using comma-separated group uuids. example: be982d21-ff93-4092-b56a-f40bac865400,a0ba2333-c541-41f0-ad89-e29a268a3ee5 - name: region in: query schema: type: string enum: - ca-central-1 - eu-west-1 required: false example: ca-central-1 description: The validator's geographic region. Only for Figment validators. - name: status in: query schema: type: string enum: - provisioned - funding_requested - deposited_not_finalized - deposited - pending_initialized - pending_queued - active_exiting - active_ongoing - active_slashed - exited_slashed - exited_unslashed - withdrawal_done - withdrawal_possible required: false example: active_ongoing description: The current validator's status. See https://docs.figment.io/docs/lifecycle-eth-validator. - name: net_fee_payout_address in: query schema: type: string required: false example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: The ETH wallet address that receives the net execution layer rewards (when they go through a fee splitting smart contract). - name: staking_request_id in: query schema: type: string required: false example: f8bd4623-39ed-46ec-8518-991792665e56 description: The ID associated to the request for a set of valdiators. - name: credentials_prefix in: query schema: type: string enum: - '0x01' - '0x02' required: false example: '0x02' description: Filter for withdrawal_credentials field - name: include_fields in: query required: false style: form explode: false schema: type: array description: A comma-separated list of additional objects to include in the response. items: type: string enum: - deposit_data - status_history - status_estimates - on_demand_exit - exit_message - staking_request - balances example: - deposit_data - status_history - status_estimates - on_demand_exit - exit_message - staking_request - balances - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. responses: '200': description: Validators list content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/validator" meta: "$ref": "#/components/schemas/pagination" example: data: - id: 29d3a221-8de7-4874-9973-35ac1e70b87b network: hoodi pubkey: '0xb121633094a5e75b886eeba797d43e80e4a6003462921f175aed2f112a460d09447f3c484f067c13b100b763070857b3' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: deposited region: ca-central-1 index: staking_request: id: 817c04a2-3d5b-4222-81c8-2de77f0be7db created_at: '2023-10-17T18:35:30Z' status_history: events: - status: provisioned changed_at: '2023-10-17T18:35:31Z' - status: deposited_not_finalized changed_at: '2023-10-17T20:38:36Z' - status: deposited changed_at: '2023-10-17T20:51:36Z' deposit_data: signature: '0xb7a8703d0ff4865174525c760509a18c5cdc4a321612d865b995d9ba60a9519703d3f7be1527e89041dbea886cb3b26a0d1a13976405b93301cdb16a54258ec3ac891e738ad73e68c6a6a09b286f8c8c71005eb8e55d144ee59fa7c311ac3dea' figment_signature: '0x308187024201cc42b16a0264b3853e123034f21ef7fc1d75b96bc8ae13427836475838c447f90e19a8e3926fe3d20bc91da4d720f886ef3eb3f35ed164674bb6cab2c216329c2002411392c3c6a70bf5f3df0ed3d092d28dbed24933d4ab150ec1ee60cba79d72d374572a04161d5f47be6485353fd78a4c04cc4f3a7bdcc9e3ae749419cc35bc3f6a13' deposit_data_root: '0x8d0b864a077b06044d2336264aaf8efbd03dd61ab0a8074bfb811b7f5c10146e' deposit_message_root: '0x5163474c33dcf5b6fb0bafcaa6a1edbe264de7c9eca6dc5358bee6c21bfc2fef' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: '2023-10-18T16:21:20Z' estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: encrypted_value: fork_version: balances: actual: '0.0' pending_deposit: '32.0' pending_topups: '0.0' pending_withdrawals: '0.0' - id: 2284ad6b-d2f6-4748-aa77-31ea5a0fa192 network: hoodi pubkey: '0xa605e932e87ffa1427623e71cc047531ea0ac9b770e243969e32b6064601eed9e1a6c8106a5f28fa18f3bddcb74464cb' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: active_ongoing region: eu-west-1 index: 1392316 staking_request: id: a0a0351b-f2c4-483a-a389-3cdabb439cf9 created_at: '2023-11-15T22:07:19Z' status_history: events: - status: provisioned changed_at: '2023-11-15T22:07:20Z' - status: deposited_not_finalized changed_at: '2023-11-15T22:08:24Z' - status: deposited changed_at: '2023-11-15T22:23:24Z' - status: pending_queued changed_at: '2023-11-16T13:55:12Z' - status: active_ongoing changed_at: '2023-11-16T14:33:36Z' deposit_data: signature: '0x8f6f942d0dc5acfa2a3b48d5638b7fda36d50f735fbe8c1cd45bf549db0071423fd83a5b287f1f076f57d756cc220c85167751b25b9299f861b6fbd88856fde52290dbbcddcafff422480ecb49d4bfbe75cc08ad054579c521aae9ff929e4b67' figment_signature: '0x30818702420167f053e387ec56437215ca5ffbd864ddf24dfbed78b3966371c69197d13d069c096e07ab40428c931966552f8c78948ec78857c3abb97333eca8dbd8f398257259024117d4525304051948043d64fea61169136a7a5a1a7b3c7312bab3dc7346c458a918c36ad03ea81392f86d01ab9054a532c5ee3d88318f8ea6cfd97973699e2c17aa' deposit_data_root: '0x96717ebace8e5840854dab131da53fba9ffcb5e6effb4a22af1ab9822a6de968' deposit_message_root: '0xc9b9933c7671c98c6d1a7be513d655180643e92edd98d6048658f308a8e1c9c7' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: '2023-11-16T11:21:36Z' estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: encrypted_value: x3rqWsJskHPwfaSG9NZJyOrzkXyxrxA+6Td6D6JYj1cXPxuzgn8XN8NIUhxTI+APv4ddYSvl8mokxMifLhfBNggnKxZsuWCUSMJ11P2lwCpmTROzhuWXxVKviqKrNeIiZBH4wi2SD+KdmvcHcPF3lkrNNtBaPGhXr+1oVpUv8unKCQHnBohcmxJvPv/2V54SHzHKZyjTXnzzdpGgSvqW0hppXhpF3PFnL79TIXxkWsco4nS8B7XEAwpYdm/vtu/CXhl5opl7/oR0C93j5Oj/A/G3+T4UONWcFRvvcJNdo+hsbJ+oXAcruad2nvgs74JENrGecUw6+XsQbRYkj4ygYYeHDOavyFgBfbwCW7Yu/uacmq10a5cpRRZLy1uelbioTqV+WQfO3xaU03zzTjicSFR7Njo36Sc7ebtRB6/h6W+Gv1T3T+PjovJcKbZOLMd/F6ei6qK8XtacsRqKtKuay1qQXUJ5hQDmy5j0vfbMAkLEvpmecZcgbwGuCSpDrLwO3q+ka+GodEkJk4zKea/mU6EPwJdnuLSJsfCEdol9IyhnDpT9kxcLJjW9+vnVJwkPSMJ8eFlPi+OGfH8qBkzKA/fdxxyc+dPMBzSjKhoJT+ifVIB5GKv9PdbAzUS1z+exGLJC8Z3ZW++5PF8O1MfTiJrV0aBS7j0CfD5boh1OS4Y= fork_version: '0x04017000' balances: actual: '33.2' pending_deposit: '0.0' pending_topups: '1.5' pending_withdrawals: '0.5' - id: 8a075b89-c1f7-4381-a158-8ee866bf68bc network: hoodi pubkey: '0x94418ea2b6d0b43f728fd85e0b5e452b554af5953788cde8ad8c653c6c6dc32369fc4d8615f03bcf1a330b9ee2477b03' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: active_exiting region: ca-central-1 index: 1122516 staking_request: id: a428d279-27b3-482b-82f4-510e7b52adb5 created_at: '2023-10-17T18:17:11Z' status_history: events: - status: provisioned changed_at: '2023-10-17T18:17:11Z' - status: funding_requested changed_at: '2023-10-17T20:35:22Z' - status: deposited changed_at: '2023-10-17T20:51:36Z' - status: pending_queued changed_at: '2023-10-18T13:29:36Z' - status: active_ongoing changed_at: '2023-10-19T06:27:12Z' - status: active_exiting changed_at: '2023-10-20T17:26:24Z' deposit_data: signature: '0xb6db15d9859eb657dc7836ca8b45775a4e064c0651958425ba57bbe51cd5d75319fe9642d3b170503ad48dc2212bcde70ae0e14d8b2ef9833dcb852a0b9c0a7ad8cb908a507426be77e5e549d6008484ef8c831cd707dff88888fa614bf03f87' figment_signature: '0x308188024201f5ab9f11e1543adaefb94884c2128fa3261550562df9bf27aed076c0115f9879e0e919cc5e4283bb37e7b1df51314f1d349d95108f8a2a81f0d138d4c284f3f095024201b5a416d40579256070795d1c6cea2a02ad65bcd088d8152c0c62ea9dfe90e00e750c01c8ea14420d64a739055bad95f8d0ffa4d35d4c02bb96fc8bb9b8135d0223' deposit_data_root: '0x86c1627b3353edd7aa56d84418b8a258820be0761a765c74920269297042df0d' deposit_message_root: '0x648c94f84c8f14ea4edd1b35557dd5715bba282cae987ca34eb2bafe6fdea792' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: '2023-10-19T10:09:36Z' estimated_exit_at: '2023-10-19T10:08:00Z' estimated_withdrawal_at: '2023-10-23T14:49:36Z' on_demand_exit: requested_at: '2023-10-20T17:10:52Z' approved_at: '2023-10-20T17:11:05Z' submitted_at: '2023-10-20T17:22:00Z' request_id: 9b41a113-44c5-4b6a-8493-78e6046b830e exit_message: encrypted_value: gk+W8XGB9bXtueP02sHh2kz4gSsj8T06sd/yXRnJM0oUAo0pvmKNf2pk3rqcLMWfPTrTZmx32BzN/8JRN+WpfyUrdtPVuSYMsyVWxWGIYeLXvBSuZoyzYfPMOXf8eg6CLz0RPZovoYood2M9aTFT2/3StyWO/Pq6aZus0luhksijwPftuAkErQgC09NHRgeb7vyhd3ZYiHPKKYUAjEIR3wllcxhFavTAFA8f1ImbZIZGRVkoykiswhcVjIjAFMSAah18IXSWRL2rDSKZvbDN6ZgKHg+J33LF55SihheOPaCNJe0j2xGczWGzXP4HzqOnlSS1aiz2XGtcaHg99be7wOduKVS4+cEaTX8JmMxKKc1L5kJ1kdOrqP9VRKa7pIkOhZr3OCDtrDaN5Mr3e+dfk4EsN8oMcqif2sLBVZoe1end0bR/3nhjGE24trrs4x8ljqE+xjMEM6JBLyWI4IhXZMxR6N3IXoHT1NPnq9lWYdKnqpOkhRkcUMNVuyHbXdh9ZD3VRLoL6eFpI+6GIbmlwOlbHMGf1pfND20NEEyyfa8F6krh+uhrga5FYg9W7/fuA+FjDEQCqe2ZU7usWQBWjJ4fCw3KHV3eMcH9jhxICHudicoxz8CQmcC32+iCYi6/ri+OCNkdEbqLkeJuFHZv1gsXEApjRdde9xq1wmm+Uvg= fork_version: balances: actual: '32.1' pending_deposit: '0.0' pending_topups: '0.0' pending_withdrawals: '0.0' - id: 8a075b89-c1f7-4381-a158-8ee866bf68bc network: hoodi pubkey: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: withdrawal_done region: ca-central-1 index: 1092111 staking_request: id: a428d279-27b3-482b-82f4-510e7b52adb5 created_at: '2023-10-17T18:17:11Z' status_history: events: - status: provisioned changed_at: '2023-10-17T18:17:11Z' - status: funding_requested changed_at: '2023-10-17T20:35:22Z' - status: deposited changed_at: '2023-10-17T20:51:36Z' - status: pending_queued changed_at: '2023-10-18T13:29:36Z' - status: active_ongoing changed_at: '2023-10-19T06:27:12Z' - status: active_exiting changed_at: '2023-10-20T17:26:24Z' - status: exited_unslashed changed_at: '2023-10-20T17:52:00Z' - status: withdrawal_possible changed_at: '2023-10-21T21:10:24Z' - status: withdrawal_done changed_at: '2023-10-23T06:08:00Z' deposit_data: signature: '0xb6db15d9859eb657dc7836ca8b45775a4e064c0651958425ba57bbe51cd5d75319fe9642d3b170503ad48dc2212bcde70ae0e14d8b2ef9833dcb852a0b9c0a7ad8cb908a507426be77e5e549d6008484ef8c831cd707dff88888fa614bf03f87' figment_signature: '0x308188024201f5ab9f11e1543adaefb94884c2128fa3261550562df9bf27aed076c0115f9879e0e919cc5e4283bb37e7b1df51314f1d349d95108f8a2a81f0d138d4c284f3f095024201b5a416d40579256070795d1c6cea2a02ad65bcd088d8152c0c62ea9dfe90e00e750c01c8ea14420d64a739055bad95f8d0ffa4d35d4c02bb96fc8bb9b8135d0223' deposit_data_root: '0x86c1627b3353edd7aa56d84418b8a258820be0761a765c74920269297042df0d' deposit_message_root: '0x648c94f84c8f14ea4edd1b35557dd5715bba282cae987ca34eb2bafe6fdea792' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: '2023-10-19T10:09:36Z' estimated_exit_at: '2023-10-19T10:08:00Z' estimated_withdrawal_at: '2023-10-23T14:49:36Z' on_demand_exit: requested_at: '2023-10-20T17:10:52Z' approved_at: '2023-10-20T17:11:05Z' submitted_at: '2023-10-20T17:22:00Z' request_id: 9b41a113-44c5-4b6a-8493-78e6046b830e exit_message: encrypted_value: gk+W8XGB9bXtueP02sHh2kz4gSsj8T06sd/yXRnJM0oUAo0pvmKNf2pk3rqcLMWfPTrTZmx32BzN/8JRN+WpfyUrdtPVuSYMsyVWxWGIYeLXvBSuZoyzYfPMOXf8eg6CLz0RPZovoYood2M9aTFT2/3StyWO/Pq6aZus0luhksijwPftuAkErQgC09NHRgeb7vyhd3ZYiHPKKYUAjEIR3wllcxhFavTAFA8f1ImbZIZGRVkoykiswhcVjIjAFMSAah18IXSWRL2rDSKZvbDN6ZgKHg+J33LF55SihheOPaCNJe0j2xGczWGzXP4HzqOnlSS1aiz2XGtcaHg99be7wOduKVS4+cEaTX8JmMxKKc1L5kJ1kdOrqP9VRKa7pIkOhZr3OCDtrDaN5Mr3e+dfk4EsN8oMcqif2sLBVZoe1end0bR/3nhjGE24trrs4x8ljqE+xjMEM6JBLyWI4IhXZMxR6N3IXoHT1NPnq9lWYdKnqpOkhRkcUMNVuyHbXdh9ZD3VRLoL6eFpI+6GIbmlwOlbHMGf1pfND20NEEyyfa8F6krh+uhrga5FYg9W7/fuA+FjDEQCqe2ZU7usWQBWjJ4fCw3KHV3eMcH9jhxICHudicoxz8CQmcC32+iCYi6/ri+OCNkdEbqLkeJuFHZv1gsXEApjRdde9xq1wmm+Uvg= fork_version: '0x01017000' balances: actual: '32.5' pending_deposit: '0.0' pending_topups: '0.0' pending_withdrawals: '0.0' - id: 29d3a221-8de7-4874-9973-35ac1e70b87b network: hoodi pubkey: '0xa151633094a5e75b886eeba797d43e80e4a6003462921f175aed2f112a460d09447f3c484f067c13b100b763070857b3' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: funding_requested region: ca-central-1 index: staking_request: id: 817c04a2-3d5b-4222-81c8-2de77f0be7db created_at: '2023-10-17T18:35:30Z' status_history: events: - status: provisioned changed_at: '2023-10-17T18:35:31Z' - status: funding_requested changed_at: '2023-10-17T21:29:18Z' deposit_data: signature: '0xb7a8703d0ff4865174525c760509a18c5cdc4a321612d865b995d9ba60a9519703d3f7be1527e89041dbea886cb3b26a0d1a13976405b93301cdb16a54258ec3ac891e738ad73e68c6a6a09b286f8c8c71005eb8e55d144ee59fa7c311ac3dea' figment_signature: '0x308187024201cc42b16a0264b3853e123034f21ef7fc1d75b96bc8ae13427836475838c447f90e19a8e3926fe3d20bc91da4d720f886ef3eb3f35ed164674bb6cab2c216329c2002411392c3c6a70bf5f3df0ed3d092d28dbed24933d4ab150ec1ee60cba79d72d374572a04161d5f47be6485353fd78a4c04cc4f3a7bdcc9e3ae749419cc35bc3f6a13' deposit_data_root: '0x8d0b864a077b06044d2336264aaf8efbd03dd61ab0a8074bfb811b7f5c10146e' deposit_message_root: '0x5163474c33dcf5b6fb0bafcaa6a1edbe264de7c9eca6dc5358bee6c21bfc2fef' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: encrypted_value: fork_version: balances: actual: '0.0' pending_deposit: '32.0' pending_topups: '0.0' pending_withdrawals: '0.0' meta: pagination: current_page: 1 total_pages: 20 total_item_count: 100 '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Invalid API key "/ethereum/broadcast": post: summary: Broadcast Staking Tx tags: - Ethereum operationId: broadcast-staking-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_broadcast_transaction" example: data: transaction_hash: '0xae96cb28f012f20a63118cf34f60de63c9884a483cc742d5f41a1aee6f5cd5f3' activity: type: status: pending network: hoodi protocol: ethereum tx: hash: '0xae96cb28f012f20a63118cf34f60de63c9884a483cc742d5f41a1aee6f5cd5f3' status: in_progress '401': description: Invalid API key '400': description: Invalid params content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: oneOf: - type: object title: Signed Transaction properties: network: type: string example: hoodi enum: - mainnet - hoodi signed_transaction: type: string example: '0x02f9031a05478459682f00845968301083010fa99494a2da805867c962148d3832d9afc512034a62c58901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000309638291775bd64b4cd22b719aa049858fb3cf8483daa41b1a9e95f1f47ce2e052a4532e6990503631ab32e15419f12c900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000c0b0d5f4a73b348a1dd2ded11ed9e409fe7685a800000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000006084c3d96a3e85859e5000b8ab71ca2fbc7a58517e31c0447432bc5a32b30cac3f1a4d6e7b018c599faa1bb9143eb97a210d1cec905cef244a13ab48c23b3b0f2d450d7e001dcc52e636dea92b792d9eaf0c926b1fa6441345a1b6bdb176b2f2760000000000000000000000000000000000000000000000000000000000000001648b6f689a35fbdc712473f9216a545d614b7e70bcfb6822a7f83f3474c902b6c080a0f25cb8fa5887644fa8ad60f255d5fbbc7cde26b0fb3a7c53a6007ec5b9d1ee33a0671ad203805b5658ad10aef9157ce1898789ce61dbc51e70a4bbc535a5751746' description: The unsigned transaction, serialized with the signature. See https://docs.figment.io/v2.0/docs/signing-transactions. required: - network - signed_transaction - type: object title: Unsigned Transaction + Signature properties: network: type: string example: hoodi enum: - mainnet - hoodi unsigned_transaction_serialized: type: string example: '0x02f902d7050f8459682f008459682f9083010fb59494a2da805867c962148d3832d9afc512034a62c58901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308dc141dc3a91a5b09dca7e9eb1c0f1f6cac2cad68ffc478956b741b1d9318285f31434fbcd7b3ae31697d772ba9d767600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000f60e717ce428e7d1d61e147aa34f1595caa56669000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060b29edc85070d565b7a5e4f1d86443979231b4152be44b03cfe94c5b96101f51e70eaa488030dd5a8ae10412ae0c64d9716fb7248cc9e94adb8b62e9025de645a46f05b767d9100ef5587c3bc0ebb78f12ff3b821417e97e36dcd8ff2376ca9c400000000000000000000000000000000000000000000000000000000000000010cf3e3a73ec22d7278d7b54ba88ae24013e5370bc263e4b3a26fef09b1b1946dc0' description: The unsigned transaction received from the create validators endpoint. See https://docs.figment.io/v2.0/reference/create-validators. signature: type: string example: '0x789a80053e4927d0a898db8e065e948f5cf086e32f9ccaa54c1908e22ac430c62621578113ddbb62d509bf6049b8fb544ab06d36f916685a2eb8e57ffadde02301' description: The signature corresponding to the unsigned transaction. See https://docs.figment.io/v2.0/docs/signing-transactions. Must be prefixed with `0x`. required: - network - unsigned_transaction_serialized - signature "/ethereum/validators_summary": get: summary: Validators Summary tags: - Ethereum operationId: ethereum-validators-summary parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: operated_by in: query description: if `figment`, returns data for Figment-operated validators only schema: type: string enum: - figment default: required: false responses: '200': description: Validator summary content: application/json: schema: "$ref": "#/components/schemas/validators_summary" example: data: validator_counts: total: 100 by_status: provisioned: 1 funding_requested: 1 deposited_not_finalized: 0 depoisted: 0 pending_initialized: 0 pending_queued: 0 active_ongoing: 94 active_exiting: 1 active_slashed: 0 exited_slashed: 0 exited_unslashed: 0 withdrawal_possible: 1 withdrawal_done: 2 '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Invalid operated_by content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Invalid API key "/ethereum/activity": get: summary: Activity tags: - Ethereum operationId: ethereum-activity parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: start in: query schema: type: string description: List activity starting at or after this time. example: '2024-03-12T00:00:00Z' required: false - name: end in: query schema: type: string description: List activity up to this time. example: '2024-03-13T00:00:00Z' required: false - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. - name: withdrawal_address in: query schema: type: string description: Withdrawal address for validators related to activity example: 0xEthereumAddress required: false responses: '200': description: List of staking/unstaking activity. content: application/json: schema: type: object properties: data: type: array items: anyOf: - "$ref": "#/components/schemas/staking_activity_stake" - "$ref": "#/components/schemas/staking_activity_unstake" meta: "$ref": "#/components/schemas/pagination" example: data: - action: unstake timestamp: '2024-03-15T14:49:01Z' network: mainnet currency: ETH amount: 32 status: exiting - action: stake timestamp: '2024-03-13T08:02:17Z' network: mainnet currency: ETH amount: 96 tx_hash: '0xef7310cc8324ce15a483d9578a5a732d203ec8f99f5b84ad8139140ea317a3fb' status: activating meta: pagination: current_page: 1 total_pages: 1 total_item_count: 2 '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Invalid API key "/ethereum/rewards": post: summary: Rewards operationId: eth-rewards tags: - Ethereum parameters: [] responses: '200': description: List of rewards and balances aggregated for all addresses registered to the organization and rolled up to the requested `time_rollup`. content: application/json: schema: type: object properties: data: type: array items: type: object properties: pubkey: type: string description: The validator pubkey example: '0x9a0059ed6c2d2e35104a5113fdefa9d06cbd855b7be170f068b100391ffc811f55af4933e5e832a6c4ccfa69e7e4d120' rewards: type: array items: type: object description: rewards earned by the validator for the given period properties: text: type: string description: The textual version of the rewards in ETH currency: type: string description: Currency of rewards textual representation. Always `ETH` numeric: type: integer description: Numerical representation of the rewards in wei exp: type: integer description: The exponent to use for converting numeric value to ETH. Always `18`. type: type: string description: 'Type of the rewards: `consensus`, `execution`, or `consensus_penalty`. The `consensus_penalty` entry is only present when `include_penalties` is `true` and the validator incurred a penalty for the period.' recipient: type: string description: Recipient of the execution rewards (tip). Only available in execution rewards for epoch/daily rollup. sender: type: string description: Address of MEV builder that sent the execution rewards (tips) to the validator slot: type: integer description: Slot number of the proposal made by the validator block: type: integer description: Execution layer block number of the proposal made by the validator is_mev: type: boolean description: Whether or not MEV boost was used for the proposal mev_relay: type: string description: Name of the mev boost service (if proposal was mev boosted) tx_hash: type: string description: Hash of the transaction used to send MEV boosted tips balances: type: array items: type: object description: Total balance of the validator at the end of each given period. properties: text: type: string description: The textual version of the balance in ETH currency: type: string description: Currency of balance textual representation. Always `ETH` numeric: type: integer description: Numerical representation of the balance in wei exp: type: integer description: The exponent to use for converting numeric value to ETH. Always `18`. epoch: type: integer description: The Epoch number (only present when epoch time_rollup is requested). timestamp: type: string description: The timestamp of the end of the period rewards are reported for. max_epoch: type: integer description: The last Epoch number reported for the validator for the day (only present when daily time_rollup is requested). withdrawal_credentials: type: string description: The withdrawal credentials of the validator entity. withdrawal_address: type: string description: Eth1 Withdrawal address of the validator. Only available when withdrawal credentials is not a BLS. started_at: type: string description: Timestamp of the earliest record of rewards we have indexed for the validator. Only available in all_time time_rollup requests. meta: type: object properties: protocol: type: string example: ethereum description: The name of the protocol queried. network: type: string enum: - mainnet - hoodi example: mainnet description: The name of the network queried. time_rollup: type: string example: daily description: The time rollup unit of the rewards. pagination: type: object description: Pagination information. Only available for all_time time_rollup and when the request supplies 'page' parameter. properties: total_item_count: type: integer description: Total number of items found. total_pages: type: integer description: Total number of pages. current_page: type: integer description: The current page number requested. examples: daily_rollup: value: data: - pubkey: '0x9a0059ed6c2d2e35104a5113fdefa9d06cbd855b7be170f068b100391ffc811f55af4933e5e832a6c4ccfa69e7e4d120' rewards: - text: '0.002932238' currency: ETH numeric: 2932238000000000 exp: 18 type: consensus - text: '0.019767962495220182' currency: ETH numeric: 19767962495220182 exp: 18 type: execution recipient: '0xed488e6cc4b030eb5bfdde3227c3d5da2b9040e8' sender: '0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5' slot: 7334788 block: 18146590 is_mev: true mev_relay: Block Native tx_hash: '0x25e3a03462a55b2632573cfc8e36cbb431d38793b6d26603cb11fd0251fee73b' balances: - text: '33.824197321' currency: ETH numeric: 33824197321000000000 exp: 18 timestamp: '2023-02-22T00:00:00Z' max_epoch: 183036 withdrawal_address: '0xeD488E6cc4B030eb5BfddE3227C3D5da2b9040E8' withdrawal_credentials: '0x010000000000000000000000ed488e6cc4b030eb5bfdde3227c3d5da2b9040e8' meta: protocol: ethereum network: mainnet time_rollup: daily all_time_rollup: value: data: - pubkey: '0x9a0059ed6c2d2e35104a5113fdefa9d06cbd855b7be170f068b100391ffc811f55af4933e5e832a6c4ccfa69e7e4d120' rewards: - text: '2.502461635' currency: ETH numeric: 2502461635000000000 exp: 18 type: consensus - text: '1.370500484453818979' currency: ETH numeric: 1370500484453818979 exp: 18 type: execution balances: - text: '32.009947048' currency: ETH numeric: 32009947048000000000 exp: 18 timestamp: '2023-02-15T10:04:59Z' started_at: '2021-12-31T05:10:47Z' withdrawal_address: '0xeD488E6cc4B030eb5BfddE3227C3D5da2b9040E8' withdrawal_credentials: '0x010000000000000000000000ed488e6cc4b030eb5bfdde3227c3d5da2b9040e8' meta: protocol: ethereum network: mainnet time_rollup: all_time pagination: total_item_count: 10 total_pages: 4 current_page: 1 epoch_rollup: value: data: - pubkey: '0xb36fb7a3f02d96a697859cd155615cd059e4cafff67c406824b5eddcefd5dd57a61ccda1d46bcb7974e93c4662790f10' epoch: 261703 timestamp: '2024-02-07T15:05:47Z' rewards: - text: '0.000009864' currency: ETH numeric: 9864000000000 exp: 18 type: consensus balances: - text: '32.045102149' currency: ETH numeric: 32045102149000000000 exp: 18 withdrawal_address: '0xB9D7934878B5FB9610B3fE8A5e441e8fad7E293f' withdrawal_credentials: '0x010000000000000000000000b9d7934878b5fb9610b3fe8a5e441e8fad7e293f' - pubkey: '0xb36fb7a3f02d96a697859cd155615cd059e4cafff67c406824b5eddcefd5dd57a61ccda1d46bcb7974e93c4662790f10' epoch: 261702 timestamp: '2024-02-07T14:59:23Z' rewards: - text: '0.04291143' currency: ETH numeric: 42911430000000000 exp: 18 type: consensus - text: '0.075704252784383499' currency: ETH numeric: 75704252784383499 exp: 18 type: execution recipient: '0x388c818ca8b9251b393131c08a736a67ccb19297' sender: '0x4838b106fce9647bdf1e7877bf73ce8b0bad5f97' slot: 8374485 block: 19177054 is_mev: true mev_relay: BloXroute Regulated tx_hash: '0x6ac617a0fc5959e821cf4b23f95da22debe776d710df52e38029ba6b846d74b0' balances: - text: '32.002190749' currency: ETH numeric: 32002190749000000000 exp: 18 withdrawal_address: '0xB9D7934878B5FB9610B3fE8A5e441e8fad7E293f' withdrawal_credentials: '0x010000000000000000000000b9d7934878b5fb9610b3fe8a5e441e8fad7e293f' meta: protocol: ethereum network: mainnet time_rollup: epoch '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: time_rollup: type: string enum: - epoch - daily - all_time description: The granularity of the rewards data. Use `epoch` for one record per validator per epoch, `daily` for rewards aggregated by UTC calendar day, or `all_time` for cumulative rewards since validator activation. example: daily start: type: string example: '2023-07-31' description: 'Lower bound of rewards data. For `epoch` time_rollup: accepts an epoch number as an integer (e.g. 261702) or a date string ("YYYY-MM-DD"). For `daily` time_rollup: accepts a date string ("YYYY-MM-DD"). Ignored for `all_time` time_rollup.' end: type: string example: '2023-07-31' description: 'Upper bound of rewards data. For `epoch` time_rollup: accepts an epoch number as an integer (e.g. 261703) or a date string ("YYYY-MM-DD"). For `daily` time_rollup: accepts a date string ("YYYY-MM-DD"). Ignored for `all_time` time_rollup.' groups: type: string description: Filter using comma-separated group uuids. example: be982d21-ff93-4092-b56a-f40bac865400,a0ba2333-c541-41f0-ad89-e29a268a3ee5 network: type: string default: mainnet enum: - mainnet - hoodi pubkeys: type: array description: A list of validator pubkeys for filtering. items: type: string example: '0x9a0059ed6c2d2e35104a5113fdefa9d06cbd855b7be170f068b100391ffc811f55af4933e5e832a6c4ccfa69e7e4d120' withdrawal_addresses: type: array description: A list of withdrawal addresses or credentials for filtering. items: type: string example: '0x010000000000000000000000ed488e6cc4b030eb5bfdde3227c3d5da2b9040e8' page: type: object properties: size: type: integer example: 500 description: Max number of entries to return. Only available when time_rollup is "all_time". number: type: integer example: 1 description: page number of result set. Only available when time_rollup is "all_time" include_penalties: type: boolean default: false description: |- When `true`, includes a separate `consensus_penalty` entry in the rewards array representing attestation and sync committee penalties for the period. Defaults to `false`. **Data availability:** Penalty data is available from epoch **427295** (2026-02-12) onward. For periods before this epoch/date, no `consensus_penalty` entry will be present in the response regardless of whether penalties were incurred. For `all_time` rollups, the penalty represents the sum from epoch 427295 (2026-02-12) to present, not the validator's full lifetime. required: - time_rollup - start - end "/ethereum/withdrawals": post: summary: Withdrawals operationId: eth-withdrawals tags: - Ethereum parameters: [] responses: '200': description: List of validator withdrawals. content: application/json: schema: type: object properties: data: type: array items: type: object properties: index: type: integer example: 7642977 description: The unique index of the withdrawal on chain (from round robin process). pubkey: type: string example: '0x9999e34d7049e81fb48cefdfa0e671b920ea1a1a292c3596041da2698a9ed303b802806c5ffd49498413c4b97748239f' description: The public key of the validator. validator_index: type: integer example: 626955 description: The index of the validator. withdrawal_address: type: string example: '0xe187d594402c8f6b147f22d443406d1b1edebdc7' description: The withdrawal address of the validator. amount_text: type: string example: '32' description: The withdrawal amount (as text). currency: type: string example: ETH amount_numeric: type: integer example: 32000000000000000000 description: The withdrawal amount (as an integer) - needs exp below. exp: type: integer example: 18 description: The exponent used to calculate the final ETH amount. full_withdrawal: type: boolean example: true description: Whether the validator exited or not. slot: type: integer example: 6694928 description: The consensus layer slot at which the withdrawal occurred. block_number: type: integer example: 17512592 description: The execution layer block at which the withdrawal occurred. epoch: type: integer example: 209216 description: The epoch in which the withdrawal sweep happened. timestamp: type: string example: '2023-06-19T08:25:36Z' description: The timestamp of the end of the epoch. meta: type: object properties: protocol: type: string example: ethereum description: The name of the protocol queried. network: type: string enum: - mainnet - hoodi example: mainnet description: Name of the network on which rewards were earned. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: start: type: string example: '2023-06-19' description: Lower bound of withdrawal data expressed as epoch number (for epoch rollup only) or timestamps (as strings "YYYY-MM-DD"). This parameter is ignored when all_time rollup is requested. end: type: string example: '2023-07-19' description: Upper bound of withdrawal data expressed as epoch number (for epoch rollup only) or timestamps (as strings "YYYY-MM-DD"). This parameter is ignored when all_time rollup is requested. network: type: string nullable: true default: mainnet enum: - mainnet - hoodi withdrawal_addresses: type: array description: A set of withdrawal addresses (or withdrawal credentials) to include in the results. nullable: true items: type: string example: '0xe187d594402c8f6b147f22d443406d1b1edebdc7' pubkeys: type: array description: A set of validator public keys to include in the results. nullable: true items: type: string example: '0x9999e34d7049e81fb48cefdfa0e671b920ea1a1a292c3596041da2698a9ed303b802806c5ffd49498413c4b97748239f' required: - start - end "/ethereum/validators/exits": post: summary: Exit Validators tags: - Ethereum operationId: exit-validators parameters: [] responses: '202': description: Exit request accepted content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/validator_to_exit" meta: type: object properties: on_demand_exit_request_id: type: string example: bdb4e909-24f5-412c-a74a-cb030852444f '400': description: Invalid parameters '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: oneOf: - type: object title: By public keys properties: pubkeys: type: array items: type: string example: '0xeacc60f7b5eb2ba92c340836b2e265bcf8e68c2393a5285dd191c221b207908aa0f2d9ae3814dc748c47e70da960da5c' description: The pubkeys of the validators that need to be exited. Must be prefixed with `0x`. network: type: string example: hoodi enum: - mainnet - hoodi required: - network - pubkeys - type: object title: By withdrawal address properties: withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: The withdrawal address of the validators that should be exited. Must be prefixed with `0x`. validators_count: type: integer example: 10 description: The number of validators to exit. network: type: string example: hoodi enum: - mainnet - hoodi required: - network - withdrawal_address - validators_count "/ethereum/broadcast_exit_message": post: summary: Broadcast Exit Message tags: - Ethereum operationId: broadcast-exit-message parameters: [] responses: '202': description: Accepted content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/broadcast_exit_message" example: data: epoch: 182738 validator_Index: 483128 signature: '0x97f0dde45b0be31fd9a76a60a25216c7b7a14f6fd21a8232cdd8cba8c419c0a618589e98ff8b8a253c9975adc11746de0f34a4d223c7927b8547d19035aeaa48f980e8e510e5278b6a901665aa24d6c54d332d39924ba3d263861a5f1fc3234d' '401': description: Invalid API key '400': description: Invalid params content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi epoch: type: string example: '182738' description: The earliest epoch at which the validator can exit. This field must be retrieved from the decrypted exit message. validator_index: type: string example: '483128' description: The index of the validators to be exited. This field must be retrieved from the decrypted exit message. signature: type: string example: '0x97f0dde45b0be31fd9a76a60a25216c7b7a14f6fd21a8232cdd8cba8c419c0a618589e98ff8b8a253c9975adc11746de0f34a4d223c7927b8547d19035aeaa48f980e8e510e5278b6a901665aa24d6c54d332d39924ba3d263861a5f1fc3234d' description: The exit message signature. This field must be retrieved from the decrypted exit message. required: - network - epoch - validator_index - signature "/ethereum/rewards_rates": get: tags: - Ethereum summary: Reward Rates operationId: eth-rewards-rates parameters: - in: query name: figment schema: type: boolean required: false description: If `true`, returns reward rates for Figment validators. If not, returns reward rates for the ETH network. - in: query name: avg schema: type: string enum: - 7d required: false description: If `7d`, returns the 7 days moving average. If not, returns the daily spot rates. - in: query name: decimal schema: type: integer required: false description: Specifies the number of desired decimal to be returned. Accepts values between 2 (default) and 5. responses: '200': description: List of rewards rates by date. content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string example: '2023-05-01' description: Timestamp for the day in format "YYYY-MM-DD" value: type: string example: '6.73' description: The total annualized reward rate for that day - in %. consensus: type: string example: '3.81' description: The piece due to consensus layer rewards (inflation) - in %. execution: type: string example: '2.92' description: The piece due to execution layer rewards (transaction fees) - in %. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" "/ethereum/network_estimates": get: summary: Network Estimates operationId: eth-network-estimates tags: - Ethereum parameters: - name: history in: query description: If `true`, returns historical daily estimates. Defaults to `false`. required: false schema: type: boolean default: false - name: network in: query required: false schema: type: string default: mainnet enum: - mainnet - hoodi responses: '200': description: Ethereum network estimates content: application/json: schema: type: object properties: data: type: object properties: activation_estimate: type: object properties: hours: type: integer example: 1126 description: If funded now, when a validator would start receiving rewards. exit_estimate: type: object properties: hours: type: integer example: 17 description: If exited now, when a validator would stop receiving rewards. withdrawal_estimate: type: object properties: hours_min: type: integer example: 44 description: If exited now, when the principal would be available (best case scenario). hours_max: type: integer example: 44 description: If exited now, when the principal would be available (worst case scenario). meta: type: object properties: protocol: type: string example: ethereum description: The name of the protocol queried. network: type: string example: mainnet description: The name of the network queried. examples: withoutHistory: value: data: activation_estimate: hours: 180 exit_estimate: hours: 3 withdrawal_estimate: hours_min: 30 hours_max: 196 meta: protocol: ethereum network: mainnet withHistory: value: data: activation_estimate: hours: 180 history: '2023-09-24': 216 '2023-09-25': 199 '2023-09-26': 185 exit_estimate: hours: 3 withdrawal_estimate: hours_min: 30 hours_max: 196 history: '2023-09-24': hours_min: 27 hours_max: 192 '2023-09-25': hours_min: 27 hours_max: 192 '2023-09-26': hours_min: 27 hours_max: 193 meta: protocol: ethereum network: mainnet '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" "/ethereum/addresses/pubkeys": post: summary: Track Validator operationId: track-validator tags: - Ethereum parameters: [] responses: '401': description: Invalid API key '201': description: Success content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/tracked_validator" example: data: id: 031af36c-508a-4f3d-84dd-f46d9e59428f network: hoodi pubkey: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' '400': description: Invalid params content: application/json: schema: "$ref": "#/components/schemas/error" '409': description: Already tracked '422': description: Validator not found on network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi pubkey: type: string example: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' description: The pubkey for the validator. Must be prefixed with `0x`. required: - network - pubkey "/ethereum/compound": post: summary: Compound Transaction tags: - Ethereum operationId: ethereum-compound-transaction parameters: [] responses: '201': description: Created Deposit content: application/json: schema: type: object properties: data: type: object properties: network: type: string signing_payload: type: string unsigned_transaction_serialized: type: string contract_call_data: type: string '400': description: Bad Request '422': description: Unprocessable Content requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi amount: type: string example: '1.5' description: Amount to deposit in ETH pubkey: type: string example: '0x8d3ba26f9cd79150463588326e4d7259581558bc8345f27abb3e7d7f0bc573df8d54e59583ce667707100119937d22e5' funding_address: type: string example: '0x4150b580643677B57debC52a6590b92F36775F8c' description: Address funding the transaction. Defaults to withdrawal address. required: - network - amount - pubkey example: data: network: hoodi unsigned_transaction_serialized: '0x02f901d983088bb0108459682f0084d8fd629e8305dc8f9400000000219ab540356cbb839cbe05303d7705fa880de0b6b3a7640000b901a422895118000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012027e313b2fda3f1f5e127be21ac5c9fa63f95987441e12840ec574e5b8c8e4bdf00000000000000000000000000000000000000000000000000000000000000308d3ba26f9cd79150463588326e4d7259581558bc8345f27abb3e7d7f0bc573df8d54e59583ce667707100119937d22e500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0' signing_payload: '0x3911c019f633312e1e4509ca3d5a8ec9e8620de96166cf6c4bc5b4ae99cca062' contract_call_data: '0x787a73e32e6029687ed9f07530e37af9dae42c6e01b83884c1259553d2a343a38218856efb25daabdc7b4c118c59776a79412a96af522ceee0d483713d76e489865378f6eeeb48000000003b9aca00c0' "/solana/stake": post: summary: Stake tags: - Solana operationId: solana-stake parameters: [] responses: '201': description: Staking transaction created content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/solana_transaction" '422': description: Unprocessable Content content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Invalid request content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: funding_account: type: string example: your-funding-account-pubkey vote_account: type: string example: your-vote-account-pubkey amount_sol: type: number example: 10.5 network: type: string example: mainnet enum: - mainnet - testnet - devnet nonce_account: type: string example: your-nonce-account-pubkey nullable: true description: Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry. nonce_authority: type: string example: your-nonce-authority-pubkey nullable: true description: Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted. required: - funding_account - vote_account - amount_sol - network "/solana/broadcast": post: summary: Broadcast tags: - Solana operationId: solana-broadcast parameters: [] responses: '201': description: Transaction broadcasted content: application/json: schema: type: object properties: transaction_hash: type: string example: CvjSFceVoRm8QJUtp1tVTZc1EABSL3HPyrZ9PXckLrJHU5hV3akB5StKJeeSsoUpPVvpzPjZwMi5YYt3e3oq7wE description: The hash of the transaction '422': description: Unprocessable Content content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Bad Request content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: transaction_payload: type: string example: your-signed-transaction-payload network: type: string example: mainnet enum: - mainnet - testnet - devnet required: - transaction_payload - network "/solana/undelegate": post: summary: Undelegate tags: - Solana operationId: solana-undelegate parameters: [] responses: '201': description: undelegate transaction created content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/solana_transaction" '422': description: Stake account is not active content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Invalid request content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: stake_account: type: string example: your-stake-account-pubkey network: type: string example: mainnet enum: - mainnet - testnet - devnet nonce_account: type: string example: your-nonce-account-pubkey nullable: true description: Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry. nonce_authority: type: string example: your-nonce-authority-pubkey nullable: true description: Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted. required: - stake_account - network "/solana/withdraw": post: summary: Withdraw tags: - Solana operationId: solana-withdraw parameters: [] responses: '201': description: withdraw transaction created content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/solana_transaction" '400': description: Invalid request content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: stake_account: type: string example: your-stake-account-pubkey recipient_account: type: string example: your-recipient-account-pubkey amount_sol: type: number example: 10.5 network: type: string example: mainnet enum: - mainnet - testnet - devnet nonce_account: type: string example: your-nonce-account-pubkey nullable: true description: Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry. nonce_authority: type: string example: your-nonce-authority-pubkey nullable: true description: Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted. required: - stake_account - recipient_account - amount_sol - network "/solana/stakes": get: summary: Stakes tags: - Solana operationId: solana-stakes parameters: - name: network in: query required: true schema: type: string enum: - mainnet - testnet - devnet - name: groups in: query required: false schema: type: string description: Filter using comma-separated group uuids. example: be982d21-ff93-4092-b56a-f40bac865400,a0ba2333-c541-41f0-ad89-e29a268a3ee5 - name: stake_authority in: query required: false schema: type: string description: Filter by stake authority public key. example: 4qjmvyPVkJG5Jc9g8fY3QHxYm4rKz2JtEpVc7WxD5nE3 - name: withdraw_authority in: query required: false schema: type: string description: Filter by withdraw authority public key. example: 7sJmFvyPVkJG5Jc9g8fY3QHxYm4rKz2JtEpVc7WxD5nE3 responses: '200': description: List Stakes content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/tracked_solana_stake_account" '400': description: Invalid request content: application/json: schema: "$ref": "#/components/schemas/error" "/solana/rewards": post: summary: Rewards operationId: sol-rewards tags: - Solana parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: stake_account: type: string description: Returns the stake account that received the rewards. validator: type: string description: Returns the validator that distributed the rewards. stake_authority: type: string description: Returns the stake authority of the stake account. withdraw_authority: type: string description: Returns the withdraw authority of the stake account. epoch: type: string description: The epoch number. Only available on epoch time_rollup timestamp: type: string description: The timestamp at the end of the epoch. rewards: type: array items: type: object description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). properties: text: type: string description: The textual version of the other fields in the rewards object. currency: type: string numeric: type: integer exp: type: integer type: type: string description: The type of reward. Either "mev" or "protocol" balances: type: array items: type: object description: The account's current balance. properties: text: type: string description: The textual version of the other fields in the rewards object. currency: type: string numeric: type: integer exp: type: integer meta: type: object properties: protocol: type: string description: The name of the protocol queried. network: type: string description: The name of the network queried. time_rollup: type: string description: The unit of the rollup. example: data: - stake_account: 2yoofMr4N78WPxVK8MU8Yy26dfRZbPw5WDzTRCA9uv95 rewards: - text: '0.001390828' currency: SOL numeric: 1390828 exp: 9 type: protocol - text: '0.000220507' currency: SOL numeric: 220507 exp: 9 type: mev balances: - text: '3.340325069' currency: SOL numeric: 3340325069 exp: 9 epoch: 584 timestamp: '2024-03-07T18:42:36Z' validator: CcaHc2L43ZWjwCHART3oZoJvHLAe9hzT2DJNUpBzoTN1 stake_authority: EToJFrGakntRnwL8LLikLgXoAfBjgwYhwwYvfVRcrgLL withdraw_authority: EToJFrGakntRnwL8LLikLgXoAfBjgwYhwwYvfVRcrgLL meta: protocol: solana network: mainnet time_rollup: epoch '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: anyOf: - "$ref": "#/components/schemas/sol_rewards_req_by_stake_account" - "$ref": "#/components/schemas/sol_rewards_req_by_stake_authority" - "$ref": "#/components/schemas/sol_rewards_req_by_withdraw_authority" - "$ref": "#/components/schemas/sol_rewards_req_by_groups" "/solana/rewards_rates": get: tags: - Solana summary: Reward Rates operationId: sol-rewards-rates parameters: - in: query name: figment schema: type: boolean default: false required: false description: If `true`, for [our main public validator](https://www.validators.app/validators/Fd7btgySsrjuo25CJCj7oE7VPMyezDhnx7pZkj2v69Nk) only. Otherwise, for the whole network. - in: query name: avg schema: type: string enum: - 7d default: 7d required: false description: If `7d`, returns the 7 days moving average. If not, returns the daily spot rates. - in: query name: decimal schema: type: integer default: 2 required: false description: Specifies the number of desired decimal to be returned. Accepts values between 2 (default) and 5. responses: '200': description: List of rewards rates content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string example: '2023-07-05' description: Specific date associated with value (staking reward rates). value: type: string example: '10.37' description: Staking reward rates, in %. protocol: type: string example: '6.81' description: Protocol (inflationary) portion of the staking reward rates, in %. mev: type: string example: '2.91' description: Mev portion of the staking reward rates, in %. example: data: - date: '2024-11-26' value: '10.37' protocol: '6.81' mev: '2.91' - date: '2024-11-25' value: '10.37' protocol: '6.81' mev: '2.91' - date: '2024-11-24' value: '10.60' protocol: '6.82' mev: '3.78' - date: '2024-11-23' value: '11.71' protocol: '6.87' mev: '4.84' - date: '2024-11-21' value: '11.93' protocol: '6.78' mev: '4.65' '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" "/solana/allocated_rewards": post: summary: Allocated Rewards tags: - Solana operationId: solana-allocated-rewards parameters: [] responses: '200': description: Success content: application/x-ndjson: schema: type: object properties: stake_account: type: string example: HsHmF24mA182PgXXXXXXXXXXXXXXXXXXXXXXXXXXXXX stake_authority: type: string example: AQbak1dRySjKfSXXXXXXXXXXXXXXXXXXXXXXXXXXXXX withdraw_authority: type: string nullable: true example: AQbak1dRySjKfSXXXXXXXXXXXXXXXXXXXXXXXXXXXXX validator: type: string example: GvZEwtCHZ7YtXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX epoch: type: integer example: 581 timestamp: type: string format: date-time example: '2024-03-01T14:58:33Z' rewards: type: array items: type: object properties: type: type: string enum: - protocol - mev - priority_fees example: protocol numeric: type: string nullable: true example: '1234567890' exp: type: integer example: 9 currency: type: string example: SOL required: - type - exp - currency required: - stake_account - stake_authority - epoch - timestamp - rewards '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string enum: - mainnet example: mainnet description: Network to query. Only mainnet is supported. start: type: - string - integer example: 581 description: 'Start of the range. Either an epoch (integer) or a date (YYYY-MM-DD). Maximum range: 90 days or 45 epochs.' end: type: - string - integer example: 590 description: 'End of the range. Must be the same type as start. Maximum range: 90 days or 45 epochs.' stake_accounts: type: array items: type: string example: - HsHmF24mA182Pg... description: Filter results to specific stake account addresses. stake_authorities: type: array items: type: string example: - AQbak1dRySjKfS... description: Filter results to specific stake authority addresses. withdraw_authorities: type: array items: type: string example: - AQbak1dRySjKfS... description: Filter results to specific withdraw authority addresses. required: - network - start - end "/vaults/transactions/create_vault": post: summary: Create Vault tags: - Vaults operationId: create-vault-transactions parameters: [] responses: '200': description: Transaction payload to create a Vault. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '422': description: Invalid transaction '400': description: Bad Request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name admin_address: type: string example: '0xdb007d02efef6640f9cfcfc8d2e0ba39fe4457de' description: Address of the Vault admin required: - network - admin_address required: true "/vaults/{vault_address}": patch: summary: Set Region tags: - Vaults operationId: set-region parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Set Region content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/vault" example: data: - id: 95dfa576-c11a-428c-8844-a1744eee95a1 address: '0xb67c867f975e9b6a022dd6b69672345268f0c877' fee_recipient_address: '0xa6372f319628bef9ad7a902a52e59c14797184be' network: hoodi region: ca-central-1 vault_admin_id: 703a145f-a034-469e-a0a9-624130d462d8 admin_address: '0xa73bacbb54faac0144fe749273a552026d0ff334' validators_manager_address: '0xdd1b638b81b8e447b3acb96e9fa7c7a39e6dc3d7' fee_bps: 500 capacity_wei: 1 own_mev_escrow: true reward_splitter_contract_address: '0xa73bacbb54faac0144fe749273a552026d0ff334' created_at: '2024-05-21T16:32:45Z' updated_at: '2024-05-21T16:32:45Z' meta: pagination: current_page: 1 total_pages: 1 total_item_count: 1 '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name region: type: string example: ca-central-1 enum: - ca-central-1 - eu-west-1 description: Region to provision the Validators in your Vault required: - network - region required: true "/vaults/{vault_address}/transactions/configure_figment_vault": post: summary: Configure Figment Validator Vault tags: - Vaults operationId: configure-figment-vault parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to set validator manager and fee recipient address. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name required: - network required: true "/vaults/{vault_address}/transactions/update_allowlist": post: summary: Update Allowlist tags: - Vaults operationId: update-allowlist-transactions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to update a Vault allow list. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '400': description: Failed request '422': description: Invalid request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name wallet_address: type: array example: '["0x4c6c8b265103a6b0c9a1f23f776b198237adb69e"]' description: A list of eth wallet addresses to add or remove from the allow list allowed: type: boolean example: true description: Sets the address to allowed or not allowed required: - network - wallet_address - allowed required: true "/vaults/{vault_address}/transactions/deposit": post: summary: Deposit tags: - Vaults operationId: deposit-transactions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to deposit Eth. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '422': description: Transaction failed due to invalid input parameters '400': description: Bad Request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name from_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the depositor receiver_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the receiver amount: type: string pattern: "^\\d+(\.\\d+)?$" example: '10.0' description: Amount of ETH to deposit required: - network - from_address - receiver_address - amount required: true "/vaults/{vault_address}/transactions/withdraw": post: summary: Withdraw tags: - Vaults operationId: create-withdraw-transactions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to enter in the exit queue. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '400': description: Bad Request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name from_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the signer receiver_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the receiver assets: type: string pattern: "^\\d+(\.\\d+)?$" example: '10.0' description: Amount of ETH to withdraw required: - network - from_address - receiver_address - assets required: true "/vaults/{vault_address}/transactions/claim_withdrawal": post: summary: Claim Withdrawal tags: - Vaults operationId: create-claim-withdrawal-transactions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to claim the withdrawal. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '400': description: Bad Request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name position_ticket: type: string example: '1234' description: The exit queue ticket received timestamp: type: string example: '1717010271' description: The timestamp when the shares entered the exit queue from_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the signer required: - network - position_ticket - timestamp - from_address required: true "/vaults/{vault_address}/allowlist": get: summary: Allowlist tags: - Vaults operationId: show-allowlist parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Allowlist content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/stake_wise_allowlist_entry" example: data: allowlist: - created_at: 1719345504000 address: '0xE373733544a50A5Ea8A4Aa0209d30d1Eab13fD2b' - created_at: 1719321972000 address: '0xC0B0D5F4A73b348A1dD2deD11ED9e409fe7685a8' '401': description: Invalid API key "/vaults/{vault_address}/address/{id}/actions": get: summary: Address Actions tags: - Vaults operationId: show-address-actions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: id in: path schema: type: string description: Wallet Address required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: limit in: query schema: type: integer description: Limit for Address Actions example: '10' required: false - name: offset in: query schema: type: integer description: Offset for Address Actions example: '1' required: false responses: '200': description: Address Actions content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_depositor_actions" example: data: stakerActions: - id: 0x08cbc471958019c940ca822b8a6e29a1425ce3574cdd2e5644789a24caea0072-139 assets: '0.1' shares: '0.1' createdAt: 1716914868000 actionType: Redeemed link: https://hoodi.etherscan.io/tx/0x08cbc471958019c940ca822b8a6e29a1425ce3574cdd2e5644789a24caea0072 - id: 0x854f766c2e64b219bbfb613c59a7a506eea08e63eb38beb75a349a1b12f789ab-8 assets: '0.1' shares: '0.1' createdAt: 1716327696000 actionType: Deposited link: https://hoodi.etherscan.io/tx/0x854f766c2e64b219bbfb613c59a7a506eea08e63eb38beb75a349a1b12f789ab - id: 0x2954b40c0aa829d07e9ab5209d52cb01ffef6737cd81e8327c1895e9ec518a85-17 assets: '0.1' shares: '0.1' createdAt: 1716295452000 actionType: Deposited link: https://hoodi.etherscan.io/tx/0x2954b40c0aa829d07e9ab5209d52cb01ffef6737cd81e8327c1895e9ec518a85 - id: 0x67b822d7cae981e74f369400ef3b87e61c8d8616031fd4c413e310b6fc76167f-93 assets: '0.1' shares: '0.1' createdAt: 1716295128000 actionType: Deposited link: https://hoodi.etherscan.io/tx/0x67b822d7cae981e74f369400ef3b87e61c8d8616031fd4c413e310b6fc76167f '401': description: Invalid API key "/vaults/{vault_address}/address/{id}/balance": get: summary: Address Balance tags: - Vaults operationId: show-address-balance parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: id in: path schema: type: string description: Wallet Address required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Address Balance content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_depositor_balance" example: data: balance: '0.2' '401': description: Invalid API key "/vaults/{vault_address}/address/{id}/rewards": get: summary: List Address Rewards tags: - Vaults operationId: list-address-rewards parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: id in: path schema: type: string description: Wallet Address required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: start_date in: query schema: type: string description: Start date for rewards data. Defaults to 1 month ago. example: '2024-01-01' required: false - name: end_date in: query schema: type: string description: End date for rewards data example: '2024-02-01' required: false responses: '200': description: Address Rewards content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_depositor_rewards" example: data: rewards: - date: '2024-08-14T00:00:00Z' sum_rewards: '0.008092870114883128' daily_rewards: '0.003493495227587289' daily_rewards_eur: '8.54' daily_rewards_gbp: '7.33' daily_rewards_usd: '9.41' - date: '2024-08-15T00:00:00Z' sum_rewards: '0.012130082097944445' daily_rewards: '0.004037211983061317' daily_rewards_eur: '9.46' daily_rewards_gbp: '8.09' daily_rewards_usd: '10.4' - date: '2024-08-16T00:00:00Z' sum_rewards: '0.014103402730016545' daily_rewards: '0.001973320632072101' daily_rewards_eur: '4.71' daily_rewards_gbp: '4.02' daily_rewards_usd: '5.17' '401': description: Invalid API key "/vaults/{vault_address}/commission/{commission_address}/actions": get: summary: Commission Actions tags: - Vaults operationId: show-commission-actions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: commission_address in: path schema: type: string description: Address of the commission required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: limit in: query schema: type: integer description: Limit for Staker Actions example: '10' required: false - name: offset in: query schema: type: integer description: Offset for Staker Actions example: '1' required: false responses: '200': description: Commission Actions content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_shareholder_actions" example: data: actions: - id: 0x9b516fb296aa5170419316efd6c15c561b1f8dc75c6b62d1be4750b759f09740-2 assets: '0.000000999999999999' shares: '0.0' created_at: '2024-08-15T14:21:36Z' action_type: ExitedAssetsClaimed link: https://hoodi.etherscan.io/tx/0x8535d751c6c020e6eae637746ef16d1c8703e6d295b24bf3e317aa67ec12957e '401': description: Invalid API key "/vaults/{vault_address}/commission/{commission_address}/balance": get: summary: Commission Balance tags: - Vaults operationId: show-commission-balance parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: commission_address in: path schema: type: string description: Address of the commision required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Commission Balance content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_shareholder_balance" example: data: balance: '0.000216504418283007' '401': description: Invalid API key "/vaults/{vault_address}/transactions/withdraw_commission": post: summary: Withdraw commission tags: - Vaults operationId: create-withdraw-commission-transactions parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Transaction payload to withdraw comission. content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/ethereum_transaction" example: data: unsigned_transaction_serialized: '0x02f90135824268248459682f008501b0f8d21a8308667b949741f8e49ffa322714511b5d17bd052698eafa43843b9aca00b901049a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000c0' unsigned_transaction_hash: '0x7de4a33e6cb731239cbf58c915b666cb9680cf14cc2d144d0bad5d7140c84fa7' max_transaction_cost: 3999034319785598 calldata: '0x9a0d79ad0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000020ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000001f400000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000' '400': description: Bad Request '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name from_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the signer receiver_address: type: string example: '0xa067dace6d518235489d9dcee8d9879703fd99f24' description: Address of the receiver amount: type: string pattern: "^\\d+(\.\\d+)?$" example: '10.0' description: Amount of ETH to withdraw required: - network - from_address - receiver_address - amount required: true "/vaults/{vault_address}/information/assets_to_shares": post: summary: Assets to Shares tags: - Vaults operationId: assets-to-shares parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Amount of assets converted to shares content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_assets_to_shares" example: data: shares: '100148521403922573' '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name assets: type: string example: '0.3' description: Amount of ETH to convert to shares required: - network - assets required: true "/vaults/{vault_address}/information/shares_to_assets": post: summary: Shares to Assets tags: - Vaults operationId: shares-to-assets parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true responses: '200': description: Amount of shares converted to assets content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_shares_to_assets" example: data: assets: '0.100148521403922573' '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name shares: type: string example: '0.3' description: Amount of Shares to convert to assets required: - network - shares required: true "/ethereum/activities": get: summary: Activities tags: - Ethereum operationId: ethereum-activities description: | Returns Ethereum staking activities for the authenticated organization.

Activity types

| `type` | Description | Notes | |-----------------|-------------|-------| | `stake` | ETH deposited to the deposit contract to provision a validator | | | `unstake` | Validator exit initiated | `tx.hash` and `tx.status` are always `null` — the exit is an off-chain beacon chain message, not an on-chain transaction | | `delegation` | Rewards compounded / top-up stake activated | | | `undelegation` | Partial withdrawal swept from the beacon chain | | | `consolidation` | Two validators consolidated into one | | | `upgrade` | Validator credentials upgraded to compounding | |

`tx.status` reflects the on-chain transaction status (`in_progress`, `confirmed`, `failed`, `expired`). parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: type in: query required: false schema: type: string enum: - stake - unstake - delegation - undelegation - consolidation - upgrade description: Filter by activity type. - name: status in: query required: false schema: type: string enum: - pending - complete - failed description: Filter by activity-life status. - name: address in: query schema: type: string required: false description: Filter to activities for a wallet address (case-insensitive). For Ethereum this is the validator withdrawal address. Matches the `delegation_address` returned on each activity. - name: start in: query schema: type: string required: false example: '2024-03-12T00:00:00Z' - name: end in: query schema: type: string required: false example: '2024-03-13T00:00:00Z' - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. responses: '200': description: List of activities, newest first. content: application/json: schema: type: object properties: data: type: array items: oneOf: - type: object title: Stake description: ETH deposited to the deposit contract to provision a validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - stake example: stake - type: object title: Unstake description: Validator exit initiated. `tx.hash` and `tx.status` are always `null` — the exit is an off-chain beacon chain message, not an on-chain transaction. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - unstake example: unstake - type: object title: Delegation description: Rewards compounded / top-up stake activated. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - delegation example: delegation - type: object title: Undelegation description: Partial withdrawal swept from the beacon chain. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - undelegation example: undelegation - type: object title: Consolidation description: Two validators consolidated into one. `details` carries the source/target validator pubkeys. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: source: type: string description: Pubkey of the validator consolidated away (source). target: type: string description: Pubkey of the validator consolidated into (target). type: type: string enum: - consolidation example: consolidation - type: object title: Upgrade description: Validator credentials upgraded to compounding. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - upgrade example: upgrade meta: type: object properties: pagination: type: object properties: current_page: type: integer example: 1 total_pages: type: integer example: 10 total_item_count: type: integer example: 1000 has_next: type: boolean example: true example: data: - id: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d type: stake status: pending network: hoodi protocol: ethereum amount: 32.0 currency: ETH timestamp: '2024-03-12T08:02:17Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xef7310cc8324ce15a483d9578a5a732d203ec8f99f5b84ad8139140ea317a3fb' status: confirmed details: pubkeys: - '0xa1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6' - id: 4a2d0c3b-9f5e-4b7c-8d2f-3e6a9b1c4d5e type: unstake status: pending network: hoodi protocol: ethereum amount: 32.0 currency: ETH timestamp: '2024-03-15T14:49:01Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: status: details: pubkeys: - '0xb2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1' - id: 5b3e1d4c-0a6f-4c8d-9e3a-4f7b0c2d5e6f type: delegation status: complete network: mainnet protocol: ethereum amount: 0.5 currency: ETH timestamp: '2024-04-01T10:00:00Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xabc123def456abc123def456abc123def456abc123def456abc123def456abc1' status: confirmed details: pubkeys: - '0xc3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2' - id: 6c4f2e5d-1b7a-4d9e-0f4b-5a8c1d3e6f7a type: undelegation status: complete network: mainnet protocol: ethereum amount: 1.5 currency: ETH timestamp: '2024-04-10T12:00:00Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xdef456abc123def456abc123def456abc123def456abc123def456abc123def4' status: confirmed details: pubkeys: - '0xd4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3' - id: 7d5a3f6e-2c8b-4e0f-1a5c-6b9d2e4f7a8b type: consolidation status: pending network: mainnet protocol: ethereum amount: 64.0 currency: ETH timestamp: '2024-05-01T09:00:00Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xccc111def456abc123def456abc123def456abc123def456abc123def456ccc1' status: in_progress details: source: '0xb1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8' target: '0xa0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7' - id: 8e6b4a7f-3d9c-4f1a-2b6d-7c0e3f5a8b9c type: upgrade status: complete network: mainnet protocol: ethereum amount: 32.0 currency: ETH timestamp: '2024-05-10T11:00:00Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xeee222def456abc123def456abc123def456abc123def456abc123def456eee2' status: confirmed details: pubkeys: - '0xe5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4' meta: pagination: current_page: 1 total_pages: 1 total_item_count: 6 '401': description: Invalid API key "/ethereum/activities/{id}": get: summary: Activity tags: - Ethereum operationId: ethereum-activity-v2 description: Fetch a single Ethereum activity by UUID or transaction hash. See the index endpoint for activity type documentation. parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: id in: path schema: type: string required: true description: Activity UUID or transaction hash. responses: '200': description: A single activity. content: application/json: schema: oneOf: - type: object title: Stake description: ETH deposited to the deposit contract to provision a validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - stake example: stake - type: object title: Unstake description: Validator exit initiated. `tx.hash` and `tx.status` are always `null` — the exit is an off-chain beacon chain message, not an on-chain transaction. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - unstake example: unstake - type: object title: Delegation description: Rewards compounded / top-up stake activated. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - delegation example: delegation - type: object title: Undelegation description: Partial withdrawal swept from the beacon chain. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - undelegation example: undelegation - type: object title: Consolidation description: Two validators consolidated into one. `details` carries the source/target validator pubkeys. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: source: type: string description: Pubkey of the validator consolidated away (source). target: type: string description: Pubkey of the validator consolidated into (target). type: type: string enum: - consolidation example: consolidation - type: object title: Upgrade description: Validator credentials upgraded to compounding. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: string example: ETH timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Ethereum, the validator withdrawal address. Matches the `address` filter. tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0x4f1a2b… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status. Null until the transaction is tracked. details: type: object properties: pubkeys: type: array items: type: string description: Validator pubkey(s) the activity concerns. type: type: string enum: - upgrade example: upgrade example: id: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d type: stake status: pending network: hoodi protocol: ethereum amount: 32.0 currency: ETH timestamp: '2024-03-12T08:02:17Z' estimated_completed_at: delegation_address: '0xabcdef1234567890abcdef1234567890abcdef12' tx: hash: '0xef7310cc8324ce15a483d9578a5a732d203ec8f99f5b84ad8139140ea317a3fb' status: confirmed details: pubkeys: - '0xa1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6' '404': description: Activity not found. "/ethereum/fee_recipient_updates": post: summary: Update Validator Fee Recipients operationId: ethereum-fee-recipient-update-create parameters: [] responses: '201': description: created '422': description: invalid network '401': description: unauthorized requestBody: content: application/json: schema: type: object properties: network: type: string new_fee_recipient_address: type: string validator_pubkeys: type: array required: - network - new_fee_recipient_address - validator_pubkeys "/solana/activities": get: summary: Activities tags: - Solana operationId: solana-activities description: | Returns Solana staking activities for the authenticated organization.

Activity types

| `type` | Description | |----------------|-------------| | `delegation` | Stake account delegated to a validator | | `undelegation` | Stake account deactivated and removed from validator | | `withdrawal` | SOL withdrawn back to wallet after cooldown |

All Solana activities are on-chain. `tx.status` reflects the transaction status (`in_progress`, `confirmed`, `failed`, `expired`). parameters: - name: network in: query schema: type: string enum: - mainnet - testnet - devnet example: mainnet required: true - name: type in: query required: false schema: type: string enum: - delegation - undelegation - withdrawal description: Filter by activity type. - name: status in: query required: false schema: type: string enum: - pending - complete - failed description: Filter by activity-life status. - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. responses: '200': description: List of activities, newest first. content: application/json: schema: type: object properties: data: type: array items: oneOf: - type: object title: Delegation description: Stake account delegated to a validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - delegation example: delegation - type: object title: Undelegation description: Stake account deactivated and removed from validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - undelegation example: undelegation - type: object title: Withdrawal description: SOL withdrawn back to wallet after cooldown. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - withdrawal example: withdrawal meta: type: object properties: pagination: type: object properties: current_page: type: integer example: 1 total_pages: type: integer example: 10 total_item_count: type: integer example: 1000 has_next: type: boolean example: true example: data: - id: 9f7c5b8a-4e0d-4a2b-3c7e-8d1f4a6b9c0d type: delegation status: pending network: mainnet protocol: solana amount: 10.0 currency: SOL timestamp: '2024-03-12T08:02:17Z' estimated_completed_at: delegation_address: StakeAuth1111111111111111111111111111111111 tx: hash: solTxAbcDef123456789 status: confirmed details: - id: 0a8d6c9b-5f1e-4b3c-4d8f-9e2a5b7c0d1e type: undelegation status: pending network: mainnet protocol: solana amount: 10.0 currency: SOL timestamp: '2024-03-15T10:00:00Z' estimated_completed_at: delegation_address: StakeAuth1111111111111111111111111111111111 tx: hash: solTxUndelegate9876 status: confirmed details: - id: 1b9e7d0c-6a2f-4c4d-5e9a-0f3b6c8d1e2f type: withdrawal status: complete network: mainnet protocol: solana amount: 10.0 currency: SOL timestamp: '2024-03-20T10:00:00Z' estimated_completed_at: delegation_address: StakeAuth1111111111111111111111111111111111 tx: hash: solTxWithdraw9876543 status: confirmed details: meta: pagination: current_page: 1 total_pages: 1 total_item_count: 3 "/solana/activities/{id}": get: summary: Activity tags: - Solana operationId: get-solana-activity description: Fetch a single Solana activity by UUID or transaction hash. See the index endpoint for activity type documentation. parameters: - name: network in: query schema: type: string enum: - mainnet - testnet - devnet example: mainnet required: true - name: id in: path schema: type: string required: true description: Activity UUID or transaction hash. responses: '200': description: A single activity. content: application/json: schema: oneOf: - type: object title: Delegation description: Stake account delegated to a validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - delegation example: delegation - type: object title: Undelegation description: Stake account deactivated and removed from validator. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - undelegation example: undelegation - type: object title: Withdrawal description: SOL withdrawn back to wallet after cooldown. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status (warmup/cooldown), not the on-chain status. network: type: string enum: - mainnet - testnet - devnet example: mainnet protocol: type: string example: solana amount: type: number example: 1.0 description: Amount in the asset major unit. currency: type: string example: SOL timestamp: type: string example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' description: Estimated activity completion time, when known. delegation_address: type: - string - 'null' description: The wallet that originated the activity — for Solana, the stake authority (not the stake account). tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: solTxAbc… description: Transaction hash, when one exists. status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: confirmed description: On-chain/transaction status, resolved via tx-tracking for SOL. details: type: - object - 'null' description: Type-specific details. Null for activity types that have none. type: type: string enum: - withdrawal example: withdrawal example: id: 9f7c5b8a-4e0d-4a2b-3c7e-8d1f4a6b9c0d type: delegation status: pending network: mainnet protocol: solana amount: 10.0 currency: SOL timestamp: '2024-03-12T08:02:17Z' estimated_completed_at: delegation_address: StakeAuth1111111111111111111111111111111111 tx: hash: solTxAbcDef123456789 status: confirmed details: "/validators": get: summary: List validators visible to the calling organization tags: - Validators operationId: list-validators parameters: - name: page[number] in: query required: false description: Page number, starting at 1. example: 1 schema: type: integer - name: page[size] in: query required: false description: Number of items per page. example: 100 schema: type: integer - name: protocol in: query required: false description: Filter results to a single protocol (e.g. `solana`, `near`). Returns 400 if the protocol is unknown. example: solana schema: type: string responses: '200': description: Success content: application/json: schema: type: object properties: data: type: array items: type: object properties: protocol: type: string example: solana description: Protocol the validator runs on. network: type: string example: mainnet description: Network within the protocol. address: type: string example: CcaHc2L43ZWjwCHART3oZoJvHLAe9hzT2DJNUpBzoTN1 description: Canonical public identifier for the validator on this protocol. type: type: string example: solana_vote description: Identifier type for the address (e.g. solana_vote, operator, validator, finality_provider). meta: type: object properties: pagination: type: object properties: current_page: type: integer example: 1 total_pages: type: integer example: 10 total_item_count: type: integer example: 1000 has_next: type: boolean example: true '400': description: Unknown protocol filter value '404': description: Endpoint hidden when feature flag is disabled '401': description: Invalid API key "/avalanche/broadcast": post: summary: Broadcasts tags: - Avalanche operationId: broadcast-avalanche-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string example: 0xTransactionHash description: Transaction Hash of the broadcasted transaction example: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name transaction_hash: type: string example: '0xae96cb28f012f20a63118cf34f60de63c9884a483cc742d5f41a1aee6f5cd5f3' description: The transaction hash from the onchain broadcast. requestBody: content: application/json: schema: type: object properties: network: type: string example: fuji enum: - fuji - mainnet description: Avalanche network to build transaction for, mainnet or fuji signed_payload: type: string example: 0xSignedPayload description: Signature from signing the signing_payload unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: unsigned_transaction_serialized from the tx response required: - network - signed_payload - unsigned_transaction_serialized "/avalanche/delegate": post: summary: Delegate tags: - Avalanche operationId: build-avalanche-delegate-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: fuji description: Avalanche network to build transaction for, mainnet or fuji signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction example: data: network: fuji unsigned_transaction_serialized: '0x7b22636f6465634964223a2230222c22766d223a2250564d222c2274784279746573223a223078303030303030303030303161303030303030303530303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303338333438303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235303030303030303230396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303530303030303030303362396163613030303030303030303130303030303030303039626564616364323032316364346332356637316261363566336438643634613034343133323465303437363939663331616435336633323038663731303330303030303030323364396264616330656431643736313333306366363830656664656231613432313539656233383764366432393530633936663764323866363162626532616130303030303030353030303030303030303030336166343430303030303030313030303030303030303030303030303037393431636166333663353636373661316531313537393135366333353132666538313461373661303030303030303036376235303465343030303030303030303030303030303630303030303030303362396163613030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303031336439626461633065643164373631333330636636383065666465623161343231353965623338376436643239353063393666376432386636316262653261613030303030303037303030303030303033623961636130303030303030303030303030303030303030303030303030313030303030303031343036383366313066356537633438303134326262333463613166336166353731613464656232353030303030303062303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c227574786f73223a5b22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303233643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303361663434303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303362396163613030303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235225d2c22616464726573734d617073223a5b5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d2c5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d5d2c2263726564656e7469616c73223a5b5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d2c5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d5d7d' signing_payload: '0x00000000001a000000050000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa0000000700000000000383480000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000209bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000003b9aca00000000010000000009bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000023d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000000003af440000000100000000000000007941caf36c56676a1e11579156c3512fe814a76a0000000067b504e40000000000000006000000003b9aca000000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000007000000003b9aca000000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000b0000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb25' '422': description: Invalid request '400': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: fuji enum: - fuji - mainnet description: Avalanche network to build transaction for, mainnet or fuji from_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain address reward_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain address to send rewards to amount: type: float example: 10.0 description: Amount of AVAX to delegate start: type: integer example: 1739568789 description: Unix timestamp of when to start delegating end: type: integer example: 1739658796 description: Unix Timestamp of when to end delegation node_id: type: string example: NodeID-41cr9VeX852rtHrELWnHthUV4Bbm75WBY description: NodeId of Validator to delegate to required: - network - from_address - amount - start - end - node_id "/avalanche/export": post: summary: Export tags: - Avalanche operationId: build-avalanche-export-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: fuji description: Avalanche network to build transaction for, mainnet or fuji signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction example: data: network: fuji unsigned_transaction_serialized: '0x7b22636f6465634964223a2230222c22766d223a2250564d222c2274784279746573223a223078303030303030303030303161303030303030303530303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303338333438303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235303030303030303230396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303530303030303030303362396163613030303030303030303130303030303030303039626564616364323032316364346332356637316261363566336438643634613034343133323465303437363939663331616435336633323038663731303330303030303030323364396264616330656431643736313333306366363830656664656231613432313539656233383764366432393530633936663764323866363162626532616130303030303030353030303030303030303030336166343430303030303030313030303030303030303030303030303037393431636166333663353636373661316531313537393135366333353132666538313461373661303030303030303036376235303465343030303030303030303030303030303630303030303030303362396163613030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303031336439626461633065643164373631333330636636383065666465623161343231353965623338376436643239353063393666376432386636316262653261613030303030303037303030303030303033623961636130303030303030303030303030303030303030303030303030313030303030303031343036383366313066356537633438303134326262333463613166336166353731613464656232353030303030303062303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c227574786f73223a5b22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303233643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303361663434303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303362396163613030303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235225d2c22616464726573734d617073223a5b5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d2c5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d5d2c2263726564656e7469616c73223a5b5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d2c5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d5d7d' signing_payload: '0x00000000001a000000050000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa0000000700000000000383480000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000209bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000003b9aca00000000010000000009bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000023d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000000003af440000000100000000000000007941caf36c56676a1e11579156c3512fe814a76a0000000067b504e40000000000000006000000003b9aca000000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000007000000003b9aca000000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000b0000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb25' '422': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: fuji enum: - fuji - mainnet description: Avalanche network to build transaction for, mainnet or fuji from_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain or C-Chain address to_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain or C-Chain address amount: type: float example: 10.0 description: Amount of AVAX to delegate required: - network - from_address - to_address - amount required: true "/avalanche/import": post: summary: Import tags: - Avalanche operationId: build-avalanche-import-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: fuji description: Avalanche network to build transaction for, mainnet or fuji signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction example: data: network: fuji unsigned_transaction_serialized: '0x7b22636f6465634964223a2230222c22766d223a2250564d222c2274784279746573223a223078303030303030303030303161303030303030303530303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303338333438303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235303030303030303230396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303530303030303030303362396163613030303030303030303130303030303030303039626564616364323032316364346332356637316261363566336438643634613034343133323465303437363939663331616435336633323038663731303330303030303030323364396264616330656431643736313333306366363830656664656231613432313539656233383764366432393530633936663764323866363162626532616130303030303030353030303030303030303030336166343430303030303030313030303030303030303030303030303037393431636166333663353636373661316531313537393135366333353132666538313461373661303030303030303036376235303465343030303030303030303030303030303630303030303030303362396163613030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303031336439626461633065643164373631333330636636383065666465623161343231353965623338376436643239353063393666376432386636316262653261613030303030303037303030303030303033623961636130303030303030303030303030303030303030303030303030313030303030303031343036383366313066356537633438303134326262333463613166336166353731613464656232353030303030303062303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c227574786f73223a5b22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303233643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303361663434303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303362396163613030303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235225d2c22616464726573734d617073223a5b5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d2c5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d5d2c2263726564656e7469616c73223a5b5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d2c5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d5d7d' signing_payload: '0x00000000001a000000050000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa0000000700000000000383480000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000209bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000003b9aca00000000010000000009bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000023d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000000003af440000000100000000000000007941caf36c56676a1e11579156c3512fe814a76a0000000067b504e40000000000000006000000003b9aca000000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000007000000003b9aca000000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000b0000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb25' '422': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: fuji enum: - fuji - mainnet description: Avalanche network to build transaction for, mainnet or fuji from_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain or C-Chain address to_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain or C-Chain address required: - network - from_address - to_address required: true "/avalanche/self_bond": post: summary: Self Bond tags: - Avalanche operationId: build-avalanche-self-bond-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: fuji description: Avalanche network to build transaction for, mainnet or fuji signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction example: data: network: fuji unsigned_transaction_serialized: '0x7b22636f6465634964223a2230222c22766d223a2250564d222c2274784279746573223a223078303030303030303030303161303030303030303530303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303338333438303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235303030303030303230396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303530303030303030303362396163613030303030303030303130303030303030303039626564616364323032316364346332356637316261363566336438643634613034343133323465303437363939663331616435336633323038663731303330303030303030323364396264616330656431643736313333306366363830656664656231613432313539656233383764366432393530633936663764323866363162626532616130303030303030353030303030303030303030336166343430303030303030313030303030303030303030303030303037393431636166333663353636373661316531313537393135366333353132666538313461373661303030303030303036376235303465343030303030303030303030303030303630303030303030303362396163613030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303031336439626461633065643164373631333330636636383065666465623161343231353965623338376436643239353063393666376432386636316262653261613030303030303037303030303030303033623961636130303030303030303030303030303030303030303030303030313030303030303031343036383366313066356537633438303134326262333463613166336166353731613464656232353030303030303062303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c227574786f73223a5b22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303233643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303030303361663434303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235222c22307830396265646163643230323163643463323566373162613635663364386436346130343431333234653034373639396633316164353366333230386637313033303030303030303133643962646163306564316437363133333063663638306566646562316134323135396562333837643664323935306339366637643238663631626265326161303030303030303730303030303030303362396163613030303030303030303030303030303030303030303030303031303030303030303134303638336631306635653763343830313432626233346361316633616635373161346465623235225d2c22616464726573734d617073223a5b5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d2c5b5b22307834303638336631306635653763343830313432626233346361316633616635373161346465623235222c305d5d5d2c2263726564656e7469616c73223a5b5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d2c5b2230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030225d5d7d' signing_payload: '0x00000000001a000000050000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa0000000700000000000383480000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000209bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000003b9aca00000000010000000009bedacd2021cd4c25f71ba65f3d8d64a0441324e047699f31ad53f3208f7103000000023d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000005000000000003af440000000100000000000000007941caf36c56676a1e11579156c3512fe814a76a0000000067b504e40000000000000006000000003b9aca000000000000000000000000000000000000000000000000000000000000000000000000013d9bdac0ed1d761330cf680efdeb1a42159eb387d6d2950c96f7d28f61bbe2aa00000007000000003b9aca000000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb250000000b0000000000000000000000010000000140683f10f5e7c480142bb34ca1f3af571a4deb25' '422': description: Invalid request '400': description: Invalid request format or validation errors requestBody: content: application/json: schema: type: object properties: network: type: string example: fuji enum: - fuji - mainnet description: Avalanche network to build transaction for, mainnet or fuji from_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain address delegator_rewards_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain address to send delegator rewards to reward_address: type: string example: P-fuji1gp5r7y84ulzgq9ptkdx2rua02udym6e9f9u3ac description: P-Chain address to send validator rewards to amount: type: float example: 10.0 description: Amount of AVAX to self-bond start: type: integer example: 1739568789 description: Unix timestamp of when the node can accept delegations end: type: integer example: 1739658796 description: Unix timestamp of when the node expires and will require another self-bond node_id: type: string example: NodeID-41cr9VeX852rtHrELWnHthUV4Bbm75WBY description: NodeId of Validator to self-bond to bls_public_key: type: string example: '0xb8a89a87149cebd30a9da3d45dc8618389babcbda39c3d295a73d3a42b5b6f2d9c48e9875782052b61a7ded8b42b0568' description: BLS public key of Validator bls_proof_of_possession: type: string example: '0x91bbaf766e386a3c93bcbb08c00dff9b0cef510f7999c68f45d4eee1c8b40c507f369a676ae7b0b880ff6f1f2df6b4ed096722ed2b675ea7e4c65a8b92961f646fe9f5b1feb018f548fa572e1bb660825377857af5750bf73ca98bda5696c752' description: BLS proof of possession of Validator delegation_fee: type: integer example: 10 description: Delegation fee as a percentage between 2 and 100 required: - network - from_address - amount - start - end - node_id - bls_public_key - bls_proof_of_possession - delegation_fee required: true "/cardano/broadcast/fireblocks": post: summary: Broadcast Transaction (Fireblocks) tags: - Cardano operationId: cardano-broadcast-fireblocks-transaction parameters: [] responses: '201': description: Broadcast Transaction (Fireblocks) content: application/json: schema: type: object properties: data: type: object properties: tx_hash: type: string example: aaf020d48ba7ade4a96488f49a206e56329e59b53c38ce5be10fe7594356fb9a description: Transaction hash example: data: tx_hash: aaf020d48ba7ade4a96488f49a206e56329e59b53c38ce5be10fe7594356fb9a '400': description: Bad Request requestBody: content: application/json: schema: type: object title: Fireblocks Transaction properties: network: type: string example: preprod enum: - mainnet - preprod unsigned_transaction_serialized: type: string example: 84a50081825820870fdc8c57849ac1038e22578eae6d0c0f5be5bf64a1c1cd39a0644c6594717800018182583900e0e033ce353e02b7c17bc1bd9df35ce5d89ddb50c1e334f07e21ed7884acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2f1b0000000253e61e4b021a0002ad55048183028200581c84acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2f581c8ed5ab11e76094fa2a2ab29fc3a57498d07e68f6fde6f326162eea880e82581ce0e033ce353e02b7c17bc1bd9df35ce5d89ddb50c1e334f07e21ed78581c84acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2fa0f5f6 description: Unsigned transaction serialized received from the staking endpoint. signed_messages: type: array description: Signed messages received from Fireblocks response body items: type: object properties: publicKey: type: string example: 372425b3404e0bfae60b33c9563ae012d826066eecb3ddca16678 signature: type: object properties: fullSig: type: string example: dca8342d19e00ba20e5070c378184222d97bb024496cddbf6d2905bdd503e252ec65fcee1da8b0a023f383cae7e17a87694447ec required: - fullSig required: - publicKey - signature required: - network - unsigned_transaction_serialized - signed_messages example: network: preprod unsigned_transaction_serialized: 84a50081825820870fdc8c57849ac1038e22578eae6d0c0f5be5bf64a1c1cd39a0644c6594717800018182583900e0e033ce353e02b7c17bc1bd9df35ce5d89ddb50c1e334f07e21ed7884acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2f1b0000000253e61e4b021a0002ad55048183028200581c84acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2f581c8ed5ab11e76094fa2a2ab29fc3a57498d07e68f6fde6f326162eea880e82581ce0e033ce353e02b7c17bc1bd9df35ce5d89ddb50c1e334f07e21ed78581c84acd54ca2f8ed6c953c055d93c9c4b28a44f8b12569e761b2160e2fa0f5f6 signed_messages: - publicKey: 372425b3404e0bfae60b33c9563ae012d826066eecb3ddca16678 signature: fullSig: dca8342d19e00ba20e5070c378184222d97bb024496cddbf6d2905bdd503e252ec65fcee1da8b0a023f383cae7e17a87694447ec required: true "/cardano/broadcast": post: summary: Broadcast Transaction tags: - Cardano operationId: cardano-broadcast-transaction parameters: [] responses: '201': description: Broadcast Transaction content: application/json: schema: type: object properties: data: type: object properties: tx_hash: type: string example: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 description: Transaction hash example: data: tx_hash: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 '400': description: Bad Request '422': description: Unprocessable Content requestBody: content: application/json: schema: type: object title: Signed Transaction properties: network: type: string example: preprod enum: - mainnet - preprod signed_transaction: type: string example: 84a500818258205b740bb52ad83d9215bc29d6f3722957e5eb259a2c457901e932babef6aa3476000181825839004341e2150af2a533abcb9104f18fd89c7386c2f2c27914988efc502994857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b1b0000000253dab14d021a0002ad55048183028200581c94857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b581cba2edef7d8bceb725ac92dde87900116a458a32667fe27bb412c49e50e82581c4341e2150af2a533abcb9104f18fd89c7386c2f2c27914988efc5029581c94857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5ba100818258209ae0eab30411b9b3157e0928379958fc0ad93bf9102215531e65d1582e9f68445840b23a1e2f697ac38f71acd21562c67bb227c73302eb82ddb0ee275f728aae67da33990a0807967a1547ce12a99443e678b7df94c6e5d0afb4b8d5aaf395b72409f5f6 description: The unsigned transaction, serialized with the signature. required: - network - signed_transaction "/cardano/epochs/{epoch_number}": get: summary: Epoch tags: - Cardano operationId: cardano-epoch parameters: - name: epoch_number in: path schema: type: string example: latest required: true description: Epoch number or "latest" for the latest epoch - name: network in: query schema: type: string example: preprod enum: - preprod - mainnet required: true description: Network name (mainnet or preprod) responses: '200': description: Returns successful epoch information content: application/json: schema: type: object required: - data properties: data: type: object properties: epoch: type: integer example: 263 start_time: type: integer example: 1767657600 end_time: type: integer example: 1768089600 first_block_time: type: integer example: 1767657602 last_block_time: type: integer example: 1767908074 block_count: type: integer example: 9163 tx_count: type: integer example: 7959 output: type: string example: '2948355933234693' fees: type: string example: '3314569711' active_stake: type: string example: '467156126908100' '404': description: Not Found '400': description: Bad Request '429': description: when it reaches the rate limit '422': description: Unprocessable Entity "/cardano/pools": get: summary: Pools tags: - Cardano operationId: cardano-pools parameters: - name: network in: query schema: type: string example: preprod enum: - preprod - mainnet required: false responses: '200': description: OK content: application/json: schema: type: object required: - pools properties: pools: type: array items: type: object properties: pool_id: type: string example: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv live_stake: type: string example: '77952719419020' description: It considers active and pending stakes live_saturation: type: number format: float example: 102.01 description: It considers active and pending stakes active_stake: type: string example: '77941719419016' description: It considers active stakes only active_saturation: type: number format: float example: 99.0 description: It considers active stakes only public: type: boolean description: true if public pool, false if white labeled pool example: true example: - pool_id: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv live_stake: '77952719419020' live_saturation: 102.01 active_stake: '77941719419016' active_saturation: 99.0 public: true - pool_id: pool19yzqr3meksnvzdxh5xf6aknfhldyqdj7eaquxgcjva4mzt5kg3v live_stake: '49009362050188' live_saturation: 64.141 active_stake: '49008262050188' active_saturation: 60.0 public: true - pool_id: pool15v22rpfg6qx9l0gx0m955gfv7tes0jpa9sy0gjs3a04lv6x9jdr live_stake: '40698810068260' live_saturation: 53.12 active_stake: '40588810068260' active_saturation: 51.1 public: true '429': description: when it reaches the rate limit '422': description: Unprocessable Entity "/cardano/rewards_withdrawals": get: summary: Rewards Withdrawals tags: - Cardano operationId: cardano-rewards-withdrawals parameters: - name: network in: query schema: type: string example: preprod enum: - preprod - mainnet required: false description: Network to get the rewards withdrawals from. Default is mainnet. - name: tx_hash in: query schema: type: string example: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 required: false description: Transaction hash of the rewards withdrawal. responses: '200': description: Returns the rewards withdrawals content: application/json: schema: type: object required: - rewards_withdrawals properties: rewards_withdrawals: type: array items: type: object properties: timestamp: type: string example: '2026-01-16 21:35:47' description: timestamp of the transaction in UTC amount_quantity: type: string example: '38529434' amount_units: type: string example: lovelace pool_id: type: string example: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv description: pool id of the pool where the rewards are withdrawn from delegator_address: type: string example: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc description: The address of the delegator who is withdrawing the rewards destination_address: type: string example: addr_1qzmwrkqkr7g5qyyvxwteqhkqs4wwy9k5fpx6j2q7x2q2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfja2tt description: The target address where the rewards are sent to tx_hash: type: string example: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 tx_status: type: string example: confirmed enum: - not_found - in_progress - confirmed - failed - expired description: | The current status of the transfer transaction. - **confirmed**: Tansaction has been confirmed. - **in_progress**: Transaction is pending for confirmation. - **failed**: Transaction has failed and will not be confirmed. - **expired**: Transaction has expired and will not be confirmed. - **not_found**: Transaction was not found. example: - timestamp: '2026-01-16 21:35:47' amount_quantity: '38529434' amount_units: lovelace tx_status: confirmed pool_id: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv delegator_address: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc destination_address: addr_1qzmwrkqkr7g5qyyvxwteqhkqs4wwy9k5fpx6j2q7x2q2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfja2tt tx_hash: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 meta: "$ref": "#/components/schemas/pagination" "/cardano/delegate": post: summary: Delegate tags: - Cardano operationId: cardano-delegate parameters: [] responses: '201': description: Delegate Transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. unsigned_transaction_serialized: type: string example: unsigned_transaction_serialized description: Unsigned transaction serialized signing_payload: type: string example: signing_payload description: Signing payload example: data: network: preprod unsigned_transaction_serialized: unsigned_transaction_serialized signing_payload: signing_payload '400': description: Bad Request '422': description: Unsupported Network requestBody: content: application/json: schema: type: object title: Register + Delegate properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. delegator_address: type: string example: delegator_address description: Delegator address validator_address: type: string example: validator_address description: Validator address / Pool ID required: - delegator_address - validator_address - network required: true "/cardano/transfer": post: summary: Transfer tags: - Cardano operationId: cardano-transfer parameters: [] responses: '201': description: Transfer Transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: preprod enum: - mainnet - preprod description: Network of the transfer unsigned_transaction_serialized: type: string example: unsigned_transaction_serialized description: Unsigned transaction serialized signing_payload: type: string example: signing_payload description: Signing payload example: data: network: preprod unsigned_transaction_serialized: unsigned_transaction_serialized signing_payload: signing_payload '400': description: Bad Request '422': description: Unsupported Network requestBody: content: application/json: schema: type: object title: Transfer properties: network: type: string example: preprod enum: - mainnet - preprod description: Network of the transfer from: type: string example: from description: From account address to: type: string example: to description: To account address amount: type: integer example: 10 description: Amount to transfer required: - from - to - amount - network required: true "/cardano/transfers": get: summary: Transfers tags: - Cardano operationId: cardano-transfers parameters: - name: network in: query schema: type: string example: preprod enum: - preprod - mainnet required: false - name: tx_hash in: query schema: type: string example: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 required: false responses: '200': description: OK content: application/json: schema: type: object required: - transfers properties: transfers: type: array items: type: object properties: from: type: string example: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc to: type: string example: addr_1qzmwrkqkr7g5qyyvxwteqhkqs4wwy9k5fpx6j2q7x2q2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfja2tt amount_quantity: type: string example: '1000000000000000000' amount_units: type: string example: lovelace tx_epoch: type: integer example: 998 description: epoch in which the transaction was included active_epoch: type: integer example: 1000 description: epoch in which the transfered ADA will become eligible for rewards pool_id: type: string example: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv description: pool id of the pool that the transaction was sent to tx_hash: type: string example: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 tx_status: type: string example: confirmed enum: - not_found - in_progress - confirmed - failed - expired description: | The current status of the transfer transaction. - **confirmed**: Tansaction has been confirmed. - **in_progress**: Transaction is pending for confirmation. - **failed**: Transaction has failed and will not be confirmed. - **expired**: Transaction has expired and will not be confirmed. - **not_found**: Transaction was not found. timestamp: type: string example: '2025-10-29T23:18:56.000Z' description: timestamp of the transaction in UTC example: - from: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc to: addr_1qzmwrkqkr7g5qyyvxwteqhkqs4wwy9k5fpx6j2q7x2q2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfja2tt amount_quantity: '1000000000000000000' amount_units: lovelace tx_epoch: 998 active_epoch: 1000 pool_id: pool13h08lf24fjmxxg0mmuattjv8dvy0r6fc4hrqg4qmj38xsweexrv tx_hash: 3cbf058b236a1814f558f4c98416efa7920a53fb0bba40f3706812af188311a7 tx_status: confirmed timestamp: '2025-10-29T23:18:56.000Z' "/cardano/unstake": post: summary: Unstake tags: - Cardano operationId: cardano-unstake parameters: [] responses: '201': description: Unstake Transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. unsigned_transaction_serialized: type: string example: unsigned_transaction_serialized description: Unsigned transaction serialized signing_payload: type: string example: signing_payload description: Signing payload example: data: network: preprod unsigned_transaction_serialized: unsigned_transaction_serialized signing_payload: signing_payload '400': description: Bad Request '422': description: Unsupported Network requestBody: content: application/json: schema: type: object title: Unstake + Deregister properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. delegator_address: type: string example: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc description: Delegator address required: - delegator_address - network required: true "/cardano/withdraw_rewards": post: summary: Withdraw Rewards tags: - Cardano operationId: cardano-withdraw-rewards parameters: [] responses: '201': description: Withdraw Rewards Transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. unsigned_transaction_serialized: type: string example: 84a4008182582055e97e4581db985557fd6f3eb0cbd3637d82e9ad1abb3e676cd594f193c19e35010181825839004341e2150af2a533abcb9104f18fd89c7386c2f2c27914988efc502994857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b1b0000000253a9a4c2021a00029d2d05a1581de094857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b00a0f5f6 description: Unsigned transaction serialized signing_payload: type: string example: 8af4e801d3023835fd709c1623df3a6103bc682871a5ab5b9563815cb2c30340 description: Signing payload amount: type: string example: '307120.360000' description: Amount of rewards to withdraw in ADA example: data: network: preprod unsigned_transaction_serialized: 84a4008182582055e97e4581db985557fd6f3eb0cbd3637d82e9ad1abb3e676cd594f193c19e35010181825839004341e2150af2a533abcb9104f18fd89c7386c2f2c27914988efc502994857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b1b0000000253a9a4c2021a00029d2d05a1581de094857be3e9281e1b394125b069bedd8cd9ef63d2f237ce79484dfd5b00a0f5f6 signing_payload: 8af4e801d3023835fd709c1623df3a6103bc682871a5ab5b9563815cb2c30340 amount: '307120.360000' '400': description: Bad Request '422': description: Unsupported Network requestBody: content: application/json: schema: type: object title: Withdraw Rewards properties: network: type: string example: preprod enum: - mainnet - preprod description: Network to stake on. delegator_address: type: string example: addr_1235rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m34k2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfjaabc description: Delegator address that will receive the rewards if no target address is provided target_address: type: string example: addr_test1qpp5rcs4pte22vatewgsfuv0mzw88pkz7tp8j9yc3m79q2v5s4a786fgrcdnjsf9kp5mahvvm8hk85hjxl88jjzdl4dsfja2tt description: "(Optional) Address to withdraw rewards to. If no target address is provided, the rewards will be sent to the delegator address." required: - delegator_address - network required: true "/cosmos/broadcast": post: summary: Broadcast Tx tags: - Cosmos operationId: broadcast-cosmos-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string description: Transaction hash example: data: transaction_hash: 8d775ab05ff98fbdbfe78aef86c2684b3e744dcc4ed15de244c0a1789e587a7f '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object title: Signed Transaction properties: network: type: string example: mainnet enum: - mainnet - testnet signed_transaction: type: string example: 928c9268b8a8112c61a60000000003004c8eda6ca02e45000000203b4cab4a012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e45000000007475bd3e012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e457015d289deaa32dd012095c3a64ae5b0a900000000a8ed3232192095c3a64ae5b0a900000000000000000110b29a19ab9c255b00 description: The unsigned transaction, serialized with the signature. required: - network - signed_transaction "/cosmos/claim_rewards": post: summary: Claim Rewards tags: - Cosmos operationId: createCosmosClaimRewardsTransaction parameters: [] responses: '201': description: Claim rewards transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Cosmos network to build transaction for delegator_address: type: string example: cosmos1xgfzh9cs5hu4y9pzgclrwgz4ecsjwy2xzd22m4 description: The address of the delegator claiming rewards validator_addresses: type: array items: type: string example: - cosmosvaloper1zc82yrr9vq2mktzg9en8n64xrrhycnx58pa874 description: Validator addresses to claim rewards from. pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Pubkey value will be retrieved from the chain but if you're using a fresh account (that does not have any outgoing activity) then this information is not available and it requires the user to pass it. pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the delegator. gas_limit: type: string example: '100000' description: Gas limit for the transaction. This is required if pubkey_type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. This is required if pubkey_type is multisig. required: - network - delegator_address required: true "/cosmos/delegate": post: summary: Delegate tags: - Cosmos operationId: createCosmosDelegateTransaction parameters: [] responses: '201': description: Delegate transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Cosmos network to build transaction for delegator_address: type: string example: cosmos1t4f40n05zgrr9y5e6lrpkx2lt7fgs75w5uvu9j description: The address of the delegator validator_address: type: string example: cosmosvaloper1zc82yrr9vq2mktzg9en8n64xrrhycnx58pa874 description: The address of the validator amount: type: string example: '1' description: Amount to delegate pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Pubkey value will be retrieved from the chain but if you're using a fresh account (that does not have any outgoing activity) then this information is not available and it requires the user to pass it. pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the delegator. gas_limit: type: string example: '100000' description: Gas limit for the transaction. This is required if pubkey_type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. This is required if pubkey_type is multisig. required: - network - delegator_address - validator_address - amount required: true "/cosmos/transfer": post: summary: Transfer tags: - Cosmos operationId: createCosmosTransferTransaction parameters: [] responses: '201': description: Transfer transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Cosmos network to build transaction for from_account_address: type: string example: cosmos1xgfzh9cs5hu4y9pzgclrwgz4edhywy2xzd22m4 description: The address sending the funds to_account_address: type: string example: cosmos1yy84cezg6he54uklmr32kysalfhua9n3t8nwpg description: The address receiving the funds amount: type: string example: '1' description: Amount to transfer pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Pubkey value will be retrieved from the chain but if you're using a fresh account (that does not have any outgoing activity) then this information is not available and it requires the user to pass it. pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the sender. gas_limit: type: string example: '100000' description: Gas limit for the transaction. This is required if pubkey_type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. This is required if pubkey_type is multisig. required: - network - from_account_address - to_account_address - amount required: true "/cosmos/undelegate": post: summary: Undelegate tags: - Cosmos operationId: createCosmosUndelegateTransaction parameters: [] responses: '201': description: Undelegate transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Cosmos network to build transaction for delegator_address: type: string example: cosmos1t4f40n05zgrr9y5e6lrpkx2lt7fgs75w5uvu9j description: The address of the delegator validator_address: type: string example: cosmosvaloper1zc82yrr9vq2mktzg9en8n64xrrhycnx58pa874 description: The address of the validator amount: type: string example: '1' description: Amount to undelegate pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Public key of the delegator pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the delegator. gas_limit: type: string example: '100000' description: Gas limit for the transaction. Required if pubkey type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. Required if pubkey type is multisig. required: - network - delegator_address - validator_address - amount - pubkey required: true "/injective/transactions/broadcast": post: summary: Broadcast a transaction tags: - Transactions parameters: [] responses: '200': description: transaction broadcasted '400': description: invalid request requestBody: content: application/json: schema: type: object properties: network: type: string enum: - mainnet - testnet example: mainnet transaction_payload: type: string description: Signed hex-encoded transaction payload required: - network - transaction_payload required: true "/near/broadcast": post: summary: Broadcast Tx tags: - Near operationId: near-broadcast-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string description: Transaction hash example: data: transaction_hash: 8d775ab05ff98fbdbfe78aef86c2684b3e744dcc4ed15de244c0a1789e587a7f '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: oneOf: - type: object title: Signed Transaction properties: network: type: string example: mainnet enum: - mainnet - testnet description: Network to broadcast transaction on signed_transaction: type: string example: 928c9268b8a8112c61a60000000003004c8eda6ca02e45000000203b4cab4a012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e45000000007475bd3e012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e457015d289deaa32dd012095c3a64ae5b0a900000000a8ed3232192095c3a64ae5b0a900000000000000000110b29a19ab9c255b00 description: Unsigned transaction, serialized with the signature. required: - network - signed_transaction - type: object title: Unsigned Transaction + Signature properties: network: type: string example: mainnet enum: - mainnet - testnet description: Network to broadcast transaction on unsigned_transaction_serialized: type: string example: '0x02f902d7050f8459682f008459682f9083010fb59494a2da805867c962148d3832d9afc512034a62c58901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308dc141dc3a91a5b09dca7e9eb1c0f1f6cac2cad68ffc478956b741b1d9318285f31434fbcd7b3ae31697d772ba9d767600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000f60e717ce428e7d1d61e147aa34f1595caa56669000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060b29edc85070d565b7a5e4f1d86443979231b4152be44b03cfe94c5b96101f51e70eaa488030dd5a8ae10412ae0c64d9716fb7248cc9e94adb8b62e9025de645a46f05b767d9100ef5587c3bc0ebb78f12ff3b821417e97e36dcd8ff2376ca9c400000000000000000000000000000000000000000000000000000000000000010cf3e3a73ec22d7278d7b54ba88ae24013e5370bc263e4b3a26fef09b1b1946dc0' description: Unsigned transaction received from the staking endpoint. signature: type: string example: 001f5402db8b788d3170d8ced5dc82b7cd70a3e85d0890bbf7a4083a05d4a15948274e1e680284bd980e9075ee6da726dde03e642f64d1511de7e74aa899b193f48c description: Signature corresponding to the unsigned transaction. required: - network - unsigned_transaction_serialized - signature "/near/delegate": post: summary: Delegate tags: - Near operationId: near-delegate parameters: [] responses: '201': description: Delegate transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network the transaction was built for unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Slate networks error requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Network to build transaction for delegator_address: type: string example: 614b201c102a17b3b75343d801797df13d2a5707acb315d344d92224a19ff91e description: Address of the delegator validator_address: type: string example: gargoyle.pool.f863973.m0 description: Address of the validator amount: type: string example: '1' description: Amount to delegate delegator_pubkey: type: string example: ed25519:Fna6vdGiLHi5ibP59f8cBYjQhjbDxD9gbgsfqYUs1q4z description: Public key of the delegator required: - network - delegator_address - validator_address - amount - delegator_pubkey required: true "/near/stakes": get: summary: Get Stakes tags: - Near operationId: near-get-stakes parameters: - name: network in: query schema: type: string example: testnet enum: - testnet - mainnet description: Network required: true responses: '200': description: Near Stakes content: application/json: schema: type: object properties: meta: "$ref": "#/components/schemas/pagination" data: type: array items: type: object properties: id: type: string description: Stake ID example: 123e4567-e89b-12d3-a456-426614174000 epoch: type: - integer - 'null' description: NEAR epoch the balances were captured at example: 4801 delegator_address: type: string description: Wallet address used to stake example: wallet-address.testnet validator_address: type: string description: Validator address example: validator.pool.a763272.a0 balance_time_stamp: type: string format: datetime description: Timestamp of last balance update example: '2021-01-01T00:00:00Z' balances: type: object properties: staked: type: string description: Staked balance in yoctoNEAR example: '200000000985912653361207' deactivating: type: string description: Unstaked balance that is not yet available to withdraw, in yoctoNEAR example: '0' withdrawable: type: string description: Unstaked balance ready to be withdrawn, in yoctoNEAR example: '972959114646034077150446' total: type: string description: Total balance in yoctoNEAR example: '1172959115631946730511653' '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" "/near/undelegate": post: summary: Undelegate tags: - Near operationId: near-undelegate parameters: [] responses: '201': description: Undelegate content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network the transaction was built for unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Invalid Request requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Network to build transaction for delegator_address: type: string example: 614b201c102a17b3b75343d801797df13d2a5707acb315d344d92224a19ff91e description: Address of the delegator validator_address: type: string example: gargoyle.pool.f863973.m0 description: Address of the validator amount: type: string example: '1' description: Amount to undelegate delegator_pubkey: type: string example: ed25519:Fna6vdGiLHi5ibP59f8cBYjQhjbDxD9gbgsfqYUs1q4z description: Public key of the delegator required: - network - delegator_address - validator_address - amount - delegator_pubkey - network required: true "/near/withdraw": post: summary: Withdraw tags: - Near operationId: near-withdraw parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network withdrawn from unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Invalid parameters '422': description: Unprocessable Entity requestBody: content: application/json: schema: type: object properties: delegator_address: type: string example: 614b201c102a17b3b75343d801797df13d2a5707acb315d344d92224a19ff91e description: Address to withdraw from validator_address: type: string example: gargoyle.pool.f863973.m0 description: Validator address to withdraw from delegator_pubkey: type: string example: ed25519:Fna6vdGiLHi5ibP59f8cBYjQhjbDxD9gbgsfqYUs1q4z description: Delegator public key amount: type: string example: '10.0' description: Amount to withdraw in NEAR network: type: string example: testnet enum: - testnet - mainnet description: Network withdraw is on. required: - delegator_address - validator_address - delegator_pubkey - amount - network example: data: address: 614b201c102a17b3b75343d801797df13d2a5707acb315d344d92224a19ff91e amount: '10.0' network: mainnet required: true "/opentrade/vaults/{vault_address}/approve": parameters: - name: vault_address in: path description: Vault address example: '0xe1b1252652A2FF0CC3A4214eE73d9FeD1FEa5b4f' required: true schema: type: string post: summary: Approve tags: - Stablecoins operationId: opentrade-approve-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: signing_payload: type: string example: '0x4e9e36c3032c59ff3dc186713ca6faad075c2c328182b207cda3b064ebd05690' description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: '0x02f87183aa36a781c38459682f008459682f1a8301b77494fd4f11a2aae86165050688c85ec9ed6210c427a980b844095ea7b3000000000000000000000000d1f0774ccff0ce4f36dea57b6a28ab7feb0a01b00000000000000000000000000000000000000000000000000000000005f5e100c0' description: Hex encoding of the built transaction network: type: string example: mainnet description: Network name requestBody: content: application/json: schema: type: object properties: depositor_address: type: string example: '0xF54F2Ddb122F52456E9344d0Ac2F72C7DeB048D3' description: Address of the depositor amount: type: string example: '1000' description: Amount of USDC to approve. Accepts whole numbers or decimals (e.g. 1000 or 1000.20) network: type: string example: mainnet description: Network to approve on "/opentrade/vaults/{vault_address}/balances/{address}": parameters: - name: vault_address in: path description: Vault address example: '0xe1b1252652A2FF0CC3A4214eE73d9FeD1FEa5b4f' required: true schema: type: string - name: address in: path description: Address of the depositor example: '0xf54f2ddb122f52456e9344d0ac2f72c7deb048d3' required: true schema: type: string get: summary: Balances tags: - Stablecoins operationId: opentrade-get-address-balance responses: '200': description: Success content: application/json: schema: type: object properties: data: type: object properties: token_balance: type: string example: '114781689324' description: Vault shares held by the account asset_balance: type: string example: '119399097449' description: Underlying asset value of vault shares asset_symbol: type: string example: MUSDC description: Symbol of the underlying asset requested_shares_of: type: string example: '2014000600' description: Shares requested for withdrawal requested_assets_of: type: string example: '2091559517' description: Assets requested for withdrawal exchange_rate: type: string example: '1040227741482692591' description: Exchange rate between shares and assets '422': description: Invalid address content: application/json: schema: "$ref": "#/components/schemas/error" '404': description: Vault not found "/opentrade/vaults/{vault_address}/deposit": parameters: - name: vault_address in: path description: Vault address example: '0xe1b1252652A2FF0CC3A4214eE73d9FeD1FEa5b4f' required: true schema: type: string post: summary: Deposit tags: - Stablecoins operationId: opentrade-deposit-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: signing_payload: type: string example: '0xd7461f48930e9619e09ac0bb972638cd177dc665e4cda24b737e2aca802ca5fd' description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: '0x02f87183aa36a781c38459682f008459682f1a8304e43d94d1f0774ccff0ce4f36dea57b6a28ab7feb0a01b080b8446e553f65000000000000000000000000000000000000000000000000000000003b9aca00000000000000000000000000f54f2ddb122f52456e9344d0ac2f72c7deb048d3c0' description: Hex encoding of the built transaction network: type: string example: mainnet description: Network name requestBody: content: application/json: schema: type: object properties: depositor_address: type: string example: '0xF54F2Ddb122F52456E9344d0Ac2F72C7DeB048D3' description: Address of the depositor assets: type: string example: '1000' description: Amount of USDC to deposit. Accepts whole numbers or decimals (e.g. 1000 or 1000.20) network: type: string example: mainnet description: Network to deposit on "/opentrade/vaults/{vault_address}/redeem": parameters: - name: vault_address in: path description: Vault address example: '0xe1b1252652A2FF0CC3A4214eE73d9FeD1FEa5b4f' required: true schema: type: string post: summary: Redeem tags: - Stablecoins operationId: opentrade-redeem-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: signing_payload: type: string example: '0xea7cfc66127908a67dd48553d330151f0e437601659d69532ec8f9b9170e6bd0' description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: '0x02f85083aa36a781c38459682f008459682f1a830802c894d1f0774ccff0ce4f36dea57b6a28ab7feb0a01b080a4aa2f892d00000000000000000000000000000000000000000000000000000000386dbda8c0' description: Hex encoding of the built transaction network: type: string example: mainnet description: Network name requestBody: content: application/json: schema: type: object properties: depositor_address: type: string example: '0xF54F2Ddb122F52456E9344d0Ac2F72C7DeB048D3' description: Address of the depositor assets: type: string example: '100' description: Amount of USDC to redeem. Accepts whole numbers or decimals (e.g. 100 or 100.20) network: type: string example: mainnet description: Network to redeem on "/osmosis/broadcast": post: summary: Broadcast Tx tags: - Osmosis operationId: broadcast-osmosis-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string description: Transaction hash example: data: transaction_hash: 8d775ab05ff98fbdbfe78aef86c2684b3e744dcc4ed15de244c0a1789e587a7f '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object title: Signed Transaction properties: network: type: string example: mainnet enum: - mainnet - testnet signed_transaction: type: string example: 928c9268b8a8112c61a60000000003004c8eda6ca02e45000000203b4cab4a012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e45000000007475bd3e012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e457015d289deaa32dd012095c3a64ae5b0a900000000a8ed3232192095c3a64ae5b0a900000000000000000110b29a19ab9c255b00 description: The unsigned transaction, serialized with the signature. required: - network - signed_transaction "/osmosis/delegate": post: summary: Delegate tags: - Osmosis operationId: createOsmosisDelegateTransaction parameters: [] responses: '201': description: Delegate transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Osmosis network to build transaction for delegator_address: type: string example: osmos1t4f40n05zgrr9y5e6lrpkx2lt7fgs75w5uvu9j description: The address of the delegator validator_address: type: string example: osmosvaloper1zc82yrr9vq2mktzg9en8n64xrrhycnx58pa874 description: The address of the validator amount: type: string example: '1' description: Amount to delegate pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Pubkey value will be retrieved from the chain but if you're using a fresh account (that does not have any outgoing activity) then this information is not available and it requires the user to pass it. pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the delegator. gas_limit: type: string example: '100000' description: Gas limit for the transaction. This is required if pubkey_type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. This is required if pubkey_type is multisig. required: - network - delegator_address - validator_address - amount required: true "/osmosis/undelegate": post: summary: Undelegate tags: - Osmosis operationId: createOsmosisUndelegateTransaction parameters: [] responses: '201': description: Undelegate transaction created '400': description: Bad request '422': description: Unprocessable entity requestBody: content: application/json: schema: type: object properties: network: type: string enum: - testnet - mainnet example: testnet description: Osmosis network to build transaction for delegator_address: type: string example: osmo1t4f40n05zgrr9y5e6lrpkx2lt7fgs75w5uvu9j description: The address of the delegator validator_address: type: string example: osmovaloper1zc82yrr9vq2mktzg9en8n64xrrhycnx58pa874 description: The address of the validator amount: type: string example: '1' description: Amount to undelegate pubkey: type: string example: '0277487b80b53698b2ea71a81704770b6fa1702a7f24ff46e73ad854cc0453b087' description: Public key of the delegator pubkey_type: type: string enum: - secp256k1 - multisig example: secp256k1 description: Type of public key of the delegator. gas_limit: type: string example: '100000' description: Gas limit for the transaction. Required if pubkey type is multisig. gas_price: type: string example: '0.0025' description: Gas price for the transaction. Required if pubkey type is multisig. required: - network - delegator_address - validator_address - amount required: true "/solana/merge": post: summary: Merge tags: - Solana operationId: build-solana-merge-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: devnet description: Solana network to build transaction for enum: - mainnet - testnet - devnet signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoded transaction payload unsigned_tx_serialized_hex: type: string example: 0xSerializedTransaction description: Hex encoded transaction payload unsigned_tx_serialized_base64: type: string example: 0xSerializedTransaction description: Base64 encoded transaction payload last_valid_block_height: type: number example: 359339325 nullable: true description: Block height after which the transaction payload will be expired nonce_value: type: string nullable: true example: GNP8nFAjKFBxL6Bfmti9gBGxCRF7gMaGmEiKfJKpJAaG description: The nonce value used as the transaction's blockhash. Present when nonce_account is provided. is_durable_nonce: type: boolean nullable: true description: True when a durable nonce is used. last_valid_block_height will be null. '422': description: Invalid request '400': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: devnet description: Solana network to build transaction for enum: - mainnet - testnet - devnet source_stake_account: type: string example: 4N8VxfxDqHpsPT6w73TzV4qVjp9SGqAfLPAfJsQZCegS description: Source stake account pubkey destination_stake_account: type: string example: XW5uYizJd7wQBtVv6dGXFb5emxp8Vh5Vhxqtq9cNsKc description: Destination stake account pubkey funding_account_pubkey: type: string example: 77Q11RZr3an6xwPs2gEXkpz2CeZ8bsCmYs9VYviAU6jf description: Pubkey of the account that will fund the transaction. Defaults to the stake authority of the source stake account. nonce_account: type: string example: your-nonce-account-pubkey nullable: true description: Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry. nonce_authority: type: string example: your-nonce-authority-pubkey nullable: true description: Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted. required: - network - source_stake_account - destination_stake_account "/solana/split": post: summary: Split tags: - Solana operationId: build-solana-split-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: devnet description: Solana network to build transaction for enum: - mainnet - testnet - devnet signing_payload: type: string example: 0xSigningPayload description: Hex encoded payload to sign unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoded transaction payload unsigned_tx_serialized_hex: type: string example: 0xSerializedTransaction description: Hex encoded transaction payload unsigned_tx_serialized_base64: type: string example: 0xSerializedTransaction description: Base64 encoded transaction payload destination_stake_account_pubkey: type: string example: 4ca4gDieqrADT2LwvwK2M6qz9WBSJcP6Q2J2MA6PBfzC description: Pubkey of the destination stake account last_valid_block_height: type: number example: 359339325 nullable: true description: Block height after which the transaction payload will be expired nonce_value: type: string nullable: true example: GNP8nFAjKFBxL6Bfmti9gBGxCRF7gMaGmEiKfJKpJAaG description: The nonce value used as the transaction's blockhash. Present when nonce_account is provided. is_durable_nonce: type: boolean nullable: true description: True when a durable nonce is used. last_valid_block_height will be null. '422': description: Invalid request '400': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: devnet description: Solana network to build transaction for enum: - mainnet - testnet - devnet stake_account: type: string example: 4N8VxfxDqHpsPT6w73TzV4qVjp9SGqAfLPAfJsQZCegS description: Source stake account pubkey funding_account_pubkey: type: string example: 4N8VxfxDqHpsPT6w73TzV4qVjp9SGqAfLPAfJsQZCegS description: Pubkey of the account that will fund the transaction. Defaults to the stake authority of the source stake account. amount_sol: type: number example: 10.5 description: Amount of SOL to split to the new stake account nonce_account: type: string example: your-nonce-account-pubkey nullable: true description: Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry. nonce_authority: type: string example: your-nonce-authority-pubkey nullable: true description: Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted. required: - network - amount_sol - stake_account "/vaults/{vault_address}/commission/{commission_address}/exit_requests": get: summary: Commission Exit Requests tags: - Vaults operationId: show-commission-exit_requests parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: commission_address in: path schema: type: string description: Address of the commission required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Commission Exit Requests content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_shareholder_exit_requests" example: data: exit_requests: - position_ticket: '1011053000346910311' owner: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' receiver: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' total_assets: '0.009999999999999999' exited_assets: '0.009999999999999999' timestamp: '1726068324' claimable: true claimed: false withdrawal_timestamp: '0' - position_ticket: '1021053000346910310' owner: '0xce3460f63e3c7d4cb06bf11a6e980f7231bfc89a' receiver: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' total_assets: '0.000009999999999999' exited_assets: '0.000009999999999999' timestamp: '1726081992' claimable: true claimed: false withdrawal_timestamp: '0' '401': description: Invalid API key "/vaults/{vault_address}/address/{id}/exit_requests": get: summary: Address Exit Requests tags: - Vaults operationId: show-address-exit-requests parameters: - name: vault_address in: path schema: type: string description: Address of the Vault required: true - name: id in: path schema: type: string description: Wallet Address required: true - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Address Exit Requests content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/stake_wise_depositor_exit_requests" example: data: exit_requests: - position_ticket: '1011053000346910311' owner: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' receiver: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' total_assets: '0.009999999999999999' exited_assets: '0.009999999999999999' timestamp: '1726068324' claimable: true claimed: false withdrawal_timestamp: '0' - position_ticket: '1021053000346910310' owner: '0xce3460f63e3c7d4cb06bf11a6e980f7231bfc89a' receiver: '0xc0b0d5f4a73b348a1dd2ded11ed9e409fe7685a8' total_assets: '0.000009999999999999' exited_assets: '0.000009999999999999' timestamp: '1726081992' claimable: true claimed: false withdrawal_timestamp: '0' '401': description: Invalid API key "/vaults": get: summary: List Vaults tags: - Vaults operationId: list-vaults parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true responses: '200': description: Validators list content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/vault" meta: "$ref": "#/components/schemas/pagination" example: data: - id: 95dfa576-c11a-428c-8844-a1744eee95a1 address: '0xb67c867f975e9b6a022dd6b69672345268f0c877' fee_recipient_address: '0xa6372f319628bef9ad7a902a52e59c14797184be' network: hoodi region: ca-central-1 vault_admin_id: 703a145f-a034-469e-a0a9-624130d462d8 admin_address: '0xa73bacbb54faac0144fe749273a552026d0ff334' validators_manager_address: '0xdd1b638b81b8e447b3acb96e9fa7c7a39e6dc3d7' fee_bps: 500 capacity_wei: 1 own_mev_escrow: true reward_splitter_contract_address: '0xa73bacbb54faac0144fe749273a552026d0ff334' created_at: '2024-05-21T16:32:45Z' updated_at: '2024-05-21T16:32:45Z' meta: pagination: current_page: 1 total_pages: 1 total_item_count: 1 '401': description: Invalid API key "/sui/broadcast": post: summary: Broadcast Tx tags: - Sui operationId: broadcast-sui-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string description: Transaction hash example: data: transaction_hash: 8d775ab05ff98fbdbfe78aef86c2684b3e744dcc4ed15de244c0a1789e587a7f '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Invalid params content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object title: Unsigned Transaction + Signature properties: network: type: string example: mainnet enum: - mainnet - testnet unsigned_transaction_serialized: type: string example: '0x02f902d7050f8459682f008459682f9083010fb59494a2da805867c962148d3832d9afc512034a62c58901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308dc141dc3a91a5b09dca7e9eb1c0f1f6cac2cad68ffc478956b741b1d9318285f31434fbcd7b3ae31697d772ba9d767600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000f60e717ce428e7d1d61e147aa34f1595caa56669000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060b29edc85070d565b7a5e4f1d86443979231b4152be44b03cfe94c5b96101f51e70eaa488030dd5a8ae10412ae0c64d9716fb7248cc9e94adb8b62e9025de645a46f05b767d9100ef5587c3bc0ebb78f12ff3b821417e97e36dcd8ff2376ca9c400000000000000000000000000000000000000000000000000000000000000010cf3e3a73ec22d7278d7b54ba88ae24013e5370bc263e4b3a26fef09b1b1946dc0' description: The unsigned transaction received from the staking endpoint. signature: type: string example: 001f5402db8b788d3170d8ced5dc82b7cd70a3e85d0890bbf7a4083a05d4a15948274e1e680284bd980e9075ee6da726dde03e642f64d1511de7e74aa899b193f48c description: The signature corresponding to the unsigned transaction. required: - network - unsigned_transaction_serialized - signature "/sui/stake": post: summary: Stake tags: - Sui operationId: build-sui-stake-tx parameters: [] responses: '201': description: transaction created content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: mainnet description: Sui network to build transaction for, mainnet or testnet unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction signing_payload: type: string example: '' optional: true example: data: network: mainnet unsigned_transaction_serialized: '0000020008002f68590000000001010000000000000000000000000000000000000000000000000000000000000005010000000000000011002022b35a7481fb136e5585c43421cf8ab49d0e219e902dedc40c2778acdcc7bc9c020200010100000000000000000000000000000000000000000000000000000000000000000000030a7375695f73797374656d11726571756573745f6164645f7374616b6500030101000300000000010200dab0f88cdcc6281a1b74fa3c446d7998c0661c5a3caf37aad9251084aac6704d0344884f0461ab5e78d6690949921757b5c4fe19a081870fda3e597df1c66d630b8811d01400000000209aea917ded43a1145b2f857de7e43b0cf80eca2521bb8ee2e42f1dfaea17ad9b9348579e59a296d072b82d689826b8fc9aa5d910131bbb17d9ae5b63b29c485c8011d014000000002005ef066056d418d07485520e95768c0e5534817fbb35c9ca74d3bf3cc3756679a04f3df578ee6b82df8f6bec1ebef360d373ca4dcdfabbc4362a009d41cccd8b8011d0140000000020c11e6d6cb8d6f7c447bc3a4643e7fab83eeefa4f52257278c543807f4ec916f7dab0f88cdcc6281a1b74fa3c446d7998c0661c5a3caf37aad9251084aac6704de80300000000000000e1f5050000000000' signing_payload: '' '422': description: Invalid request '400': description: Invalid request requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet enum: - testnet - mainnet description: Sui network to build transaction for, mainnet or testnet delegator_address: type: string example: '0x5abfae57b89d93ddaa8f39b52ea2ea7b2b93d967e3eb6f4d3c194f3b67756123' description: Signer address validator_address: type: string example: '0xdabfae57b89d93ddaa8f39b52ea2ea7b2b93d967e3eb6f4d3c194f3b67756123' description: Validator address amount: type: string example: '10.0' description: Amount of Sui to delegate gas_budget: type: string example: '0.1' description: Gas budget in Sui for the transaction. Default is 0.1 optional: true default: '0.1' required: - network - delegator_address - validator_address - amount "/sui/stakes": get: summary: Get Stakes tags: - Sui operationId: sui-get-stakes parameters: - name: network in: query schema: type: string example: testnet enum: - testnet - mainnet description: Network stake is on. required: true - name: delegator_address in: query schema: type: string description: Wallet address used to stake required: true responses: '200': description: Sui Stakes content: application/json: schema: type: object properties: meta: "$ref": "#/components/schemas/pagination" data: type: array items: type: object properties: stake_id: type: string description: Stake ID of the staking record delegator_address: type: string description: Wallet address used to stake validator_address: type: string description: Validator address to withdraw from network: type: string description: Network stake is on status: type: string description: Status of the Sui stake tx_hash: type: string description: Transaction hash of the delegation on Sui chain amount: type: float description: Staked amount in Sui example: data: - stake_id: '0xabc8822e0aadb358697f049f51c734bf02e992fa8864e13eded521d0f58b0123' delegator_address: '0xabcfae57b89d93ddaa8f39b52ea2ea7b2b93d967e3eb6f4d3c194f3b67756123' validator_address: '0xabc1b319e23495995fc837dafd28fc6af8b645edddff0fc1467f1ad631362123' network: mainnet status: active tx_hash: 4Se1rgNoA5GXDY5A5dqPqyGnKuizMju3dp6jvJmPaabc amount: 3.5 '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" "/sui/withdraw": post: summary: Withdraw Tx tags: - Sui operationId: sui-withdraw-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string example: mainnet description: Network withdrawn from unsigned_transaction_serialized: type: string example: 0xSerializedTransaction description: Hex encoding of the built transaction signing_payload: type: string example: '' optional: true example: data: network: mainnet unsigned_transaction_serialized: '0000020008002f68590000000001010000000000000000000000000000000000000000000000000000000000000005010000000000000011002022b35a7481fb136e5585c43421cf8ab49d0e219e902dedc40c2778acdcc7bc9c020200010100000000000000000000000000000000000000000000000000000000000000000000030a7375695f73797374656d11726571756573745f6164645f7374616b6500030101000300000000010200dab0f88cdcc6281a1b74fa3c446d7998c0661c5a3caf37aad9251084aac6704d0344884f0461ab5e78d6690949921757b5c4fe19a081870fda3e597df1c66d630b8811d01400000000209aea917ded43a1145b2f857de7e43b0cf80eca2521bb8ee2e42f1dfaea17ad9b9348579e59a296d072b82d689826b8fc9aa5d910131bbb17d9ae5b63b29c485c8011d014000000002005ef066056d418d07485520e95768c0e5534817fbb35c9ca74d3bf3cc3756679a04f3df578ee6b82df8f6bec1ebef360d373ca4dcdfabbc4362a009d41cccd8b8011d0140000000020c11e6d6cb8d6f7c447bc3a4643e7fab83eeefa4f52257278c543807f4ec916f7dab0f88cdcc6281a1b74fa3c446d7998c0661c5a3caf37aad9251084aac6704de80300000000000000e1f5050000000000' signing_payload: '' '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: delegator_address: type: string example: '0x3abfae57b89d93ddaa8f39b52ea2ea7b2b93d967e3eb6f4d3c194f3b67756123' description: Address of the wallet that created the stake stake_id: type: string example: '0x13a0a2dbd053366fa3938035aa013ba4791ae22ab85f12a29717bd34062da123' description: ID of stake to withdraw network: type: string example: testnet enum: - mainnet - testnet description: Network withdraw is on. required: - delegator_address - stake_id - network example: data: address: '0x3abfae57b89d93ddaa8f39b52ea2ea7b2b93d967e3eb6f4d3c194f3b67756123' stake_id: '0x13a0a2dbd053366fa3938035aa013ba4791ae22ab85f12a29717bd34062da123' network: testnet required: true "/vaulta/broadcast": post: summary: Broadcast Staking Tx tags: - Vaulta operationId: broadcast-vaulta-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: transaction_hash: type: string description: Transaction hash example: data: transaction_hash: 8d775ab05ff98fbdbfe78aef86c2684b3e744dcc4ed15de244c0a1789e587a7f '422': description: Invalid network content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: Transaction expired content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: oneOf: - type: object title: Signed Transaction properties: network: type: string example: mainnet enum: - mainnet - testnet signed_transaction: type: string example: 928c9268b8a8112c61a60000000003004c8eda6ca02e45000000203b4cab4a012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e45000000007475bd3e012095c3a64ae5b0a900000000a8ed3232182095c3a64ae5b0a9a0860100000000000441000000000000004c8eda6ca02e457015d289deaa32dd012095c3a64ae5b0a900000000a8ed3232192095c3a64ae5b0a900000000000000000110b29a19ab9c255b00 description: The unsigned transaction, serialized with the signature. required: - network - signed_transaction - type: object title: Unsigned Transaction + Signature properties: network: type: string example: mainnet enum: - mainnet - testnet unsigned_transaction_serialized: type: string example: '0x02f902d7050f8459682f008459682f9083010fb59494a2da805867c962148d3832d9afc512034a62c58901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308dc141dc3a91a5b09dca7e9eb1c0f1f6cac2cad68ffc478956b741b1d9318285f31434fbcd7b3ae31697d772ba9d767600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000f60e717ce428e7d1d61e147aa34f1595caa56669000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060b29edc85070d565b7a5e4f1d86443979231b4152be44b03cfe94c5b96101f51e70eaa488030dd5a8ae10412ae0c64d9716fb7248cc9e94adb8b62e9025de645a46f05b767d9100ef5587c3bc0ebb78f12ff3b821417e97e36dcd8ff2376ca9c400000000000000000000000000000000000000000000000000000000000000010cf3e3a73ec22d7278d7b54ba88ae24013e5370bc263e4b3a26fef09b1b1946dc0' description: The unsigned transaction received from the staking endpoint. signature: type: string example: 001f5402db8b788d3170d8ced5dc82b7cd70a3e85d0890bbf7a4083a05d4a15948274e1e680284bd980e9075ee6da726dde03e642f64d1511de7e74aa899b193f48c description: The signature corresponding to the unsigned transaction. required: - network - unsigned_transaction_serialized - signature "/vaulta/stake": post: summary: Stake Tx tags: - Vaulta operationId: vaulta-stake-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network of the stake unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: address: type: string example: pasiempasiem description: user's own Vaulta account address amount: type: integer example: 1000000 description: Amount to stake network: type: string example: testnet enum: - mainnet - testnet description: Network stake is on. proxy_account_address: type: string example: resproxy.spt description: EOS voting proxy account required: - address - amount - network example: data: address: pasiempasiem amount: 1000000 network: testnet proxy_account_address: resproxy.spt required: true "/vaulta/unstake": post: summary: Unstake Tx tags: - Vaulta operationId: vaulta-unstake-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network unstaked from unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: address: type: string example: pasiempasiem description: Address to unstake from amount: type: integer example: 10 description: Amount to unstake in REX network: type: string example: testnet enum: - mainnet - testnet description: Network to unstake from. required: - address - amount - network example: data: address: pasiempasiem amount: 10 network: testnet required: true "/vaulta/vote": post: summary: Vote Tx tags: - Vaulta operationId: vaulta-vote-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network of the vote unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: address: type: string example: pasiempasiem description: user's own Vaulta account address network: type: string example: testnet enum: - mainnet - testnet description: Network vote is on. proxy_account_address: type: string example: proxyaccount description: Proxy account address required: - address - network example: data: address: pasiempasiem network: testnet proxy_account_address: proxyaccount required: true "/vaulta/withdraw": post: summary: Withdraw Tx tags: - Vaulta operationId: vaulta-withdraw-tx parameters: [] responses: '201': description: Success content: application/json: schema: type: object properties: data: type: object properties: network: type: string description: Network withdrawn from unsigned_transaction_serialized: type: string description: Unsigned transaction serialized signing_payload: type: string description: Signing payload '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: address: type: string example: pasiempasiem description: Address to withdraw from amount: type: integer example: 10 description: Amount to withdraw in A network: type: string example: testnet enum: - mainnet - testnet description: Network withdraw is on. required: - address - amount - network example: data: address: pasiempasiem amount: 10 network: testnet required: true "/cardano/rewards_all": post: summary: Rewards tags: - Cardano operationId: get-cardano-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: delegator_address: type: string description: Address of the delegator pool_id: type: string description: Pool ID (validator address) stake_key_hash: type: string description: Stake key hash epoch: type: integer example: 450 description: Epoch when reward occurred timestamp: type: string example: '2024-10-11' description: Date when reward occurred rewards: type: array description: Rewards received (member and/or leader) items: type: object properties: text: type: string example: '1.0' description: Formatted reward amount as string in ADA currency: type: string example: ADA description: Currency of the reward numeric: type: integer example: 1000000 description: Numerical representation of reward in Lovelace type: type: string enum: - member - leader example: member description: Type of reward exp: type: integer example: 6 description: The exponent to use for converting numeric value to ADA balances: type: array description: Account balances items: type: object properties: text: type: string example: '1000.0' description: Formatted balance amount as string in ADA currency: type: string example: ADA description: Currency of the balance numeric: type: integer example: 1000000 description: Numerical representation of balance in Lovelace exp: type: integer example: 6 description: The exponent to use for converting numeric value to ADA meta: type: object properties: network: type: string example: mainnet description: Network where rewards occurred time_rollup: type: string example: epoch description: Time aggregation level '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: start: type: - string - integer example: 2024-10-10 or 8 description: Rewards received on or after this date (YYYY-MM-DD) or epoch (integer) end: type: - string - integer example: 2024-10-16 or 11 description: Rewards received on or before this date (YYYY-MM-DD) or epoch (integer) delegator_addresses: type: array items: type: string example: - "'addr1...'" - "'addr2...'" description: Optional list of delegator addresses to filter by network: type: string example: mainnet enum: - mainnet - preprod description: Select preprod Network if you want to test with mock data default: mainnet required: - start - end required: true "/ethereum/rewards_net": post: summary: Net Rewards tags: - Rewards operationId: get-ethereum-net-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: wallet: type: string description: Address the rewards were received on timestamp: type: string description: Date reward was received on rewards: type: array description: Execution and Consensus rewards received by address items: oneOf: - type: object properties: type: type: string example: execution description: type of reward pubkey: type: string example: '0x9027ebabf426534ae093b552880616acf5c487a89fb6de124785387200719f17c4161a07a933c335a16b38b2ce907e7f' description: Pubkey of validator index: type: integer example: 2345 description: Index of validator tx_hash: type: string example: '0x3a340300942ea74c8d8029dc82160609f36c27196e9daf7dd3e69dae81447463' description: TxHash of reward transaction timestamp: type: string example: '2024-10-24T00:01:00Z' description: Timestamp when reward happend block: type: integer example: 2000034 description: Block number reward occured at payees: type: array items: type: object properties: address: type: string description: Address payout was sent to amount: type: string description: Amount in WEI of payout network: type: string example: hoodi description: Network where reward occurred - type: object properties: type: type: string example: withdrawal description: type of reward pubkey: type: string example: '0x9027ebabf426534ae093b552880616acf5c487a89fb6de124785387200719f17c4161a07a933c335a16b38b2ce907e7f' description: Pubkey of validator index: type: integer example: 2345 description: Index of validator amount: type: string description: Amount in WEI of payout withdrawal_address: type: string example: '0xe86154635fd73979fef12b65a5683f06054ae8a3' description: Address payout was sent to block: type: integer example: 2000034 description: Block number reward occured at epoch: type: integer example: 2345 description: Epoch when reward occurred slot: type: integer example: 234 description: Slot when reward occurred network: oneOf: - type: string - type: 'null' example: hoodi description: Network where reward occurred '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network to stake on. start: type: string example: '2024-10-10' description: Rewards received after this date end: type: string example: '2024-10-16' description: Rewards received before this date required: - network - start - end required: true "/opentrade/rewards": post: summary: Rewards tags: - Stablecoins operationId: get-opentrade-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: address: type: string description: Address that received rewards vault: type: string description: Vault address that received rewards timestamp: type: string example: '2024-10-24T00:01:00Z' description: Timestamp when reward happened reward_usdc: type: float example: 0.02 description: Reward amount in USDC total_staked_usdc: type: float example: 2.0 description: Total staked to opentrade in USDC requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet enum: - mainnet description: Network Rewards are on. start: type: string example: '2024-10-10' description: Rewards received on or after this date end: type: string example: '2024-10-16' description: Rewards received on or before this date required: - network - start - end required: true "/opentrade/{vault_address}/apr": get: summary: Annual Percentage Rate tags: - Stablecoins operationId: opentrade-apr parameters: - name: vault_address in: path schema: type: string description: The vault address to get APR for example: '0xe1b1252652A2FF0CC3A4214eE73d9FeD1FEa5b4f' required: true - name: avg in: query schema: type: string enum: - 30d - 90d - ytd default: 30d description: 'The yield period: 30d (30-day trailing), 90d (90-day trailing), ytd (year-to-date). Defaults to 30d.' example: 30d required: false - name: decimal in: query schema: type: integer default: 2 description: Number of decimal places in the value (2–5). Defaults to 2. example: 2 required: false responses: '401': description: Invalid API key '200': description: Success content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string description: Date of the yield metrics value: type: string description: Annualized simple yield for the chosen period example: data: - date: '2026-03-30' value: '5.53' "/polkadot/rewards": post: summary: DOT Rewards tags: - Polkadot operationId: polkadot-rewards description: Returns Polkadot rewards for the given stash accounts and time range. parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: stash_account: type: string example: 13GzuCvjeTPi8EESc5HxgSqrzFgwiGEgSPt6q3HgU5UT4vZo description: Returns the stash account or validator that received the rewards. validator: type: string example: 138QdRbUTB9eNY94Q4Mj5r39FkgMiyHCAy8UFMNA5gvtrfSB description: The validator that distributed the rewards era: type: string example: '845' description: The era number. active_era: type: integer timestamp: type: string example: '2023-07-21T00:00:00Z' description: The timestamp of the end of the era. rewards: type: array items: type: object properties: text: type: string description: The textual version of the other fields in the rewards object. example: '3.6694634053' currency: type: string description: Currency code (e.g. DOT) example: DOT numeric: type: integer description: Raw reward amount in planck (smallest unit) example: 36694634053 exp: type: integer description: Subunit exponent example: 10 description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). balances: type: array items: type: object properties: text: type: string description: The textual version of the other fields in the rewards object. example: '211509.8626318288' currency: type: string description: Currency code (e.g. DOT) example: DOT numeric: type: integer description: Raw account balance in planck (smallest unit) example: 211509.8626318288 exp: type: integer description: Subunit exponent example: 10 description: The account's staked balance to the validator. meta: type: object properties: protocol: type: string example: polkadot description: The name of the protocol queried. network: type: string example: mainnet description: The name of the network queried. time_rollup: type: string example: era description: The unit of the rollup. '422': description: Unprocessable Entity '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: stash_accounts: type: array items: type: string example: 12m7XtVWZQuxTirqtzm2dm5J4r16vSQruPmahThMnskG8Bcp description: Stash accounts addresses. start: type: integer description: Either era (number) or timestamps (strings formatted like "YYYY-MM-DD"). example: 1115 end: type: integer description: Either era (number) or timestamps (strings formatted like "YYYY-MM-DD"). example: 1145 time_rollup: type: string enum: - era - daily default: era description: Aggregation unit required: - stash_accounts - start - end required: true "/injective/rewards": post: summary: Rewards tags: - Rewards operationId: get-injective-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: address: type: string description: Address that received rewards validator: type: string description: Validator address timestamp: type: string example: '2024-10-24T00:01:00Z' description: Timestamp when reward happend reward: type: float example: 0.008 description: Reward amount reward_usd: type: float example: 0.02 description: Reward amount in USD total_staked: type: float example: 2.0 description: Total staked to injective requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet enum: - mainnet description: Network Rewards are on. start: type: string example: '2024-10-10' description: Rewards received on or after this date end: type: string example: '2024-10-16' description: Rewards received on or before this date required: - network - start - end required: true "/sui/rewards": post: summary: Rewards tags: - Rewards operationId: get-sui-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: address: type: string description: Address that received rewards validator: type: string description: Validator's staking pool address timestamp: type: string example: '2024-10-24T00:01:00Z' description: Timestamp when reward happend reward: type: float example: 0.008 description: Reward amount reward_usd: type: float example: 0.02 description: Reward amount in USD total_staked: type: float example: 2.0 description: Total staked to sui requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet enum: - mainnet description: Network Rewards are on. start: type: string example: '2024-10-10' description: Rewards received on or after this date end: type: string example: '2024-10-16' description: Rewards received on or before this date required: - network - start - end required: true "/avalanche/rewards": post: summary: Rewards tags: - Rewards operationId: get-avalanche-rewards parameters: [] responses: '200': description: Got rewards content: application/json: schema: type: object properties: data: type: array items: type: object properties: address: type: string description: Address that received rewards validator: type: string description: Validator address timestamp: type: string example: '2024-10-24T00:01:00Z' description: Timestamp when reward happend reward: type: float example: 0.008 description: Reward amount reward_usd: type: float example: 0.02 description: Reward amount in USD total_staked: type: float example: 2.0 description: Total staked to avalanche requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet enum: - mainnet description: Network Rewards are on. start: type: string example: '2024-10-10' description: Rewards received on or after this date end: type: string example: '2024-10-16' description: Rewards received on or before this date required: - network - start - end required: true "/sui/rewards_rates": get: summary: Rewards Rates tags: - Rewards operationId: get-sui-rewards-rates parameters: - name: avg in: query schema: type: string enum: - 7d default: 7d description: If 7d, returns the 7 days moving average. If not, returns the daily spot rates. example: 7d required: false - name: decimal in: query schema: type: integer default: 2 description: Specifies the number of desired decimal to be returned. Accepts values between 2 (default) and 5. example: 2 required: false responses: '401': description: Invalid API key '200': description: Success content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string description: Date of the rewards rate value: type: string description: SRR moving average value based on avg parameter example: data: - date: '2023-08-05' value: '3.49' "/cardano/rewards_rates": get: summary: Rewards Rates tags: - Rewards operationId: get-cardano-rewards-rates parameters: - name: avg in: query schema: type: string enum: - 7d default: 7d description: If 7d, returns the 7 days moving average. If not, returns the daily spot rates. example: 7d required: false - name: decimal in: query schema: type: integer default: 2 description: Specifies the number of desired decimal to be returned. Accepts values between 2 (default) and 5. example: 2 required: false responses: '401': description: Invalid API key '200': description: Success content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string description: Date of the rewards rate value: type: string description: SRR moving average value based on avg parameter example: data: - date: '2023-08-05' value: '3.49' "/addresses": post: summary: Track Address operationId: tracked-address-create parameters: [] responses: '201': description: Address created content: application/json: schema: type: object properties: data: type: object properties: id: type: string format: uuid example: 123e4567-e89b-12d3-a456-426614174000 protocol: type: string example: solana network: type: string example: mainnet address: type: string example: 3ydf2egwcsjvigdqagtcajfcdjayzs4wklxokgerfb8j '401': description: Unauthorized '422': description: Unprocessable content '400': description: Bad request requestBody: content: application/json: schema: type: object properties: protocol: type: string example: ethereum enum: - agoric - aleo - algorand - aptos - audius - avalanche - axelar - babylon - band - berachain - bnb - cardano - casper - celestia - celo - concordium - core - cosmos - cronos - dydx - eigen_layer - ethereum - flow - hyperliquid - initia - injective - iota - kusama - lido - liquid_collective_eth - livepeer - lombard - mantra - mina - monad - moonbeam - multiversx - namada - near - opentrade_eth - osmosis - polkadot - polygon - provenance - sei - skale - solana - stacks - starknet - story - sui - the_graph - towns - vaulta - wemix - zama - zero_gravity - zeta_chain address: type: string example: '0xc08131d2dd8d877b18f2cd035ae936a5d3dda93a' description: The account address. fee_percentage: type: number example: 0.05 description: The gross effective fee for this account as a decimal. required: - protocol - address "/aptos/stakes": post: summary: Get staking transaction tags: - Aptos operationId: aptos-stake parameters: [] responses: '201': description: Successfully got staking tx content: application/json: schema: type: object properties: signing_payload: type: string transaction_payload: type: string example: transaction_payload: '0xabf1e1fd0791abd362a97525da8b5f5169379d06bb66d7e507180c9f557879a302000000000000000200000000000000000000000000000000000000000000000000000000000000010f64656c65676174696f6e5f706f6f6c096164645f7374616b650002200a4113560d0b18ba38797f2a899c4b27e0c5b0476be5d8f6be68fba8b1861ed0080065cd1d00000000400d03000000000064000000000000007b2e6766000000000200' signing_payload: '0xb5e97db07fa0bd0e5598aa3643a9bc6f6693bddc1a9fec9e674a461eaa00b193abf1e1fd0791abd362a97525da8b5f5169379d06bb66d7e507180c9f557879a302000000000000000200000000000000000000000000000000000000000000000000000000000000010f64656c65676174696f6e5f706f6f6c096164645f7374616b650002200a4113560d0b18ba38797f2a899c4b27e0c5b0476be5d8f6be68fba8b1861ed0080065cd1d00000000400d03000000000064000000000000007b2e67660000000002' '422': description: Invalid API key usage content: application/json: schema: "$ref": "#/components/schemas/error" '400': description: invalid arguments content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object properties: network: type: string example: mainnet description: Which Aptos network to stake on. required: true signer_address: type: string example: '0xabf1e1fd0791abd362a97525da8b5f5169379d06bb66d7e507180c9f557879a3' description: address of wallet to stake. required: true amount: type: integer example: 500000 description: Amount of APT to stake. required: true required: true "/ethereum/addresses/pubkeys/{pubkey}": delete: summary: Untrack Validator tags: - Ethereum operationId: untrack-validator parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: pubkey in: path required: true example: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' description: The pubkey for the validator. Must be prefixed with `0x`. schema: type: string responses: '200': description: Untracked content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/tracked_validator" example: data: id: 031af36c-508a-4f3d-84dd-f46d9e59428f network: hoodi pubkey: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' '404': description: Not found '422': description: Cannot untrack validator '401': description: Invalid API key "/ethereum/validators/0x02": post: summary: Create Pectra Validators tags: - Ethereum operationId: create-pectra-validators parameters: [] responses: '201': description: Created validators content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/validator_provision_response" meta: "$ref": "#/components/schemas/validators_create_meta_aggregated_pectra" example: data: - network: hoodi pubkey: '0x8fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad' status: provisioned withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' region: ca-central-1 deposit_data: deposit_data_root: '0xfd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4b' deposit_message_root: '0xae8ccf82724a48014e7f694c3ee329210e435059d73a4fa4da2bcd825ced381e' fork_version: '0x01017000' signature: '0x802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a29' figment_signature: '0x308188024200e8a18a258b03149255a0fc4a62a6c51b99ce38c8a33b91b57d76ca1f37484a18d1efa2c2bc6182ad284ff8aad076248f27af179c0b86a6542fa67185aa1cc9f50e02420147dacbaf9cdae0638d44b824f199d9f8047d5eb9ae4ee3dfe9d1860ba7582ac4be464d46647d7ed3adac83789ec88f2b6d4ac426d90126076589291d83735c63a3' deposit_cli_version: 2.7.0 amount: 32000000000 status_history: events: - status: provisioned changed_at: '2024-02-22T14:14:07.848Z' status_estimates: estimated_active_at: estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: staking_request: id: f9764269-ddb8-451f-9f81-fd460e3e2f14 created_at: '2024-02-22T14:14:07.848Z' - network: hoodi pubkey: '0xaafc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67c3e' status: provisioned withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' region: ca-central-1 deposit_data: deposit_data_root: '0xfd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4c' deposit_message_root: '0xae8ccf82724a48014e7f694c3ee329210e435059d73a4fa4da2bcd825ced381f' fork_version: '0x01017000' signature: '0x802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a29' figment_signature: '0x308188024200e8a18a258b03149255a0fc4a62a6c51b99ce38c8a33b91b57d76ca1f37484a18d1efa2c2bc6182ad284ff8aad076248f27af179c0b86a6542fa67185aa1cc9f50e02420147dacbaf9cdae0638d44b824f199d9f8047d5eb9ae4ee3dfe9d1860ba7582ac4be464d46647d7ed3adac83789ec88f2b6d4ac426d90126076589291d83735c63a3' deposit_cli_version: 2.7.0 amount: 33000000000 status_history: events: - status: provisioned changed_at: '2024-02-22T14:14:07.848Z' status_estimates: estimated_active_at: estimated_exit_at: estimated_withdrawal_at: on_demand_exit: requested_at: approved_at: submitted_at: request_id: exit_message: staking_request: id: f9764269-ddb8-451f-9f81-fd460e3e2f14 created_at: '2024-02-22T14:14:07.848Z' meta: staking_request: id: f9764269-ddb8-451f-9f81-fd460e3e2f14 created_at: '2024-02-22T14:14:07.848Z' amounts: - '32' - '33' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' network: hoodi region: ca-central-1 staking_transaction: from: '0xE40F80618324C814cD444434670a44ba4583aE38' to: '0xA627f94a8F94E4713d38F52aC3a6377B0a111d47' amount_wei: '65000000000000000000' contract_call_data: '0x4f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a290000000000000000000000000000000000000000000000000000000000000001fd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4b' unsigned_transaction_hashed: '0x3ac39ee1d324ed9816a8de4fc5f41d071bb2e522bac1fa9ea85684f6911977c4' unsigned_transaction_serialized: '0x02f902d9824268058459682f0084ce33ae928305dc8f94a627f94a8f94e4713d38f52ac3a6377b0a111d478901bc16d674ec800000b902a44f498c730000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000308fc7b098767d6b45f431ac820f6884f6f74bbebee4e6f30456bbcf48a280248307a8260f2913a27c076f2f0c64c67aad00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000020010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060802bec470e333c380a0c530361e76cfa27f662a411d993a663aa080070601411aae1263ccbd8f812199b1fff091e20fc0b7e793c1d0313d36d27040588d578fd8b6029be264cf79533132d1df0d40dc9ce5ba159fe4c936e9c4b4c9bf2988a290000000000000000000000000000000000000000000000000000000000000001fd997ecea9711498990181f0e3f8426b1c9528e61a8fbcc999db5fb3b3d6ca4bc0' max_gas_wei: '1328940220021646' '400': description: Bad request content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Unprocessable entity content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: type: object title: 0x02 Validators (Pectra) properties: network: type: string example: hoodi enum: - mainnet - hoodi description: The network on which validators will be created. amounts: type: array items: type: string example: - '32' - '33' description: Amounts in ETH to initially deposit to the validators. withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address used for the withdrawals credentials of the validators. This is the address that will receive consensus rewards and unstaked ETH after exiting. funding_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that holds the ETH to be staked and that will sign the staking transaction. If not specified, `withdrawal_address` will be used. fee_recipient_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' description: An ETH wallet address that will receive the execution layer rewards. If not specified, `withdrawal_address` will be used. region: type: string example: ca-central-1 description: The geographic region where the validators will be created. enum: - ca-central-1 - eu-west-1 required: - network - withdrawal_address - amounts "/ethereum/consolidation": post: summary: Consolidation Transaction tags: - Ethereum operationId: ethereum-consolidation-transaction parameters: [] responses: '201': description: Created Consolidation transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string signing_payload: type: string unsigned_transaction_serialized: type: string contract_call_data: type: string '400': description: Bad Request '422': description: Unprocessable Content requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi source: type: string example: '0xa043ddb3499ecfa845d39e855a12964c0280ee0b12ee90b762a700a6937af868f3d3a761fb65c9a0c63c0af247058775' description: Source validator pubkey target: type: string example: '0x92897962d46a800423aea934efe915fed7d41c68d704dba1647f43719f0bee3fb6b5b6f1a1d2b7a9e8c936293b94430a' description: Target validator pubkey required: - network - source - target example: data: network: hoodi unsigned_transaction_serialized: '0x02f88c83088bb0588459682f00845a980e068305dc8f940000bbddc7ce488642fb579f8b00f3a59000725101b860a043ddb3499ecfa845d39e855a12964c0280ee0b12ee90b762a700a6937af868f3d3a761fb65c9a0c63c0af24705877592897962d46a800423aea934efe915fed7d41c68d704dba1647f43719f0bee3fb6b5b6f1a1d2b7a9e8c936293b94430ac0' signing_payload: '0x6d3f976a94449ffe5cfe77d26d566b11ddfe8705bf8555d01ac65c0accfd81ba' "/ethereum/withdrawal": post: summary: Withdrawal Transaction tags: - Ethereum operationId: ethereum-withdrawal-transaction parameters: [] responses: '201': description: Created Withdrawal transaction content: application/json: schema: type: object properties: data: type: object properties: network: type: string signing_payload: type: string unsigned_transaction_serialized: type: string contract_call_data: type: string '400': description: Bad Request requestBody: content: application/json: schema: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi amount: type: string example: '1.5' description: Amount to withdraw in ETH pubkey: type: string example: '0x84c1259553d2a343a38218856efb25daabdc7b4c118c59776a79412a96af522ceee0d483713d76e489865378f6eeeb48' required: - network - amount - pubkey example: data: network: hoodi unsigned_transaction_serialized: '0x02f901d983088bb0108459682f0084d8fd629e8305dc8f9400000000219ab540356cbb839cbe05303d7705fa880de0b6b3a7640000b901a422895118000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012027e313b2fda3f1f5e127be21ac5c9fa63f95987441e12840ec574e5b8c8e4bdf00000000000000000000000000000000000000000000000000000000000000308d3ba26f9cd79150463588326e4d7259581558bc8345f27abb3e7d7f0bc573df8d54e59583ce667707100119937d22e500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0' signing_payload: '0x3911c019f633312e1e4509ca3d5a8ec9e8620de96166cf6c4bc5b4ae99cca062' contract_call_data: '0x787a73e32e6029687ed9f07530e37af9dae42c6e01b83884c1259553d2a343a38218856efb25daabdc7b4c118c59776a79412a96af522ceee0d483713d76e489865378f6eeeb48000000003b9aca00c0' "/ethereum/validators/{pubkey}": get: summary: Get Validator tags: - Ethereum operationId: get-validator parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: pubkey in: path required: true example: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' description: The pubkey for the validator. Must be prefixed with `0x`. schema: type: string - name: include_fields in: query required: false style: form explode: false schema: type: array description: A comma-separated list of additional objects to include in the response. items: type: string enum: - deposit_data - status_history - status_estimates - on_demand_exit - exit_message - staking_request - balances example: - deposit_data - status_history - status_estimates - on_demand_exit - exit_message - staking_request - balances responses: '200': description: A single validator content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/validator" example: data: id: 8a075b89-c1f7-4381-a158-8ee866bf68bc network: hoodi pubkey: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' withdrawal_address: '0xE40F80618324C814cD444434670a44ba4583aE38' withdrawal_credentials: '0x010000000000000000000000e40f80618324c814cd444434670a44ba4583ae38' net_fee_payout_address: '0xE40F80618324C814cD444434670a44ba4583aE38' fee_recipient_address: '0xE40F80618324C814cD444434670a44ba4583aE38' status: withdrawal_done region: ca-central-1 staking_request: id: a428d279-27b3-482b-82f4-510e7b52adb5 created_at: '2023-10-17T18:17:11Z' status_history: events: - status: provisioned changed_at: '2023-10-17T18:17:11Z' - status: deposited_not_finalized changed_at: '2023-10-17T20:39:36Z' - status: deposited changed_at: '2023-10-17T20:51:36Z' - status: pending_queued changed_at: '2023-10-18T13:29:36Z' - status: active_ongoing changed_at: '2023-10-19T06:27:12Z' - status: active_exiting changed_at: '2023-10-20T17:26:24Z' - status: exited_unslashed changed_at: '2023-10-20T17:52:00Z' - status: withdrawal_possible changed_at: '2023-10-21T21:10:24Z' - status: withdrawal_done changed_at: '2023-10-23T06:08:00Z' deposit_data: signature: '0xb6db15d9859eb657dc7836ca8b45775a4e064c0651958425ba57bbe51cd5d75319fe9642d3b170503ad48dc2212bcde70ae0e14d8b2ef9833dcb852a0b9c0a7ad8cb908a507426be77e5e549d6008484ef8c831cd707dff88888fa614bf03f87' figment_signature: '0x308188024201f5ab9f11e1543adaefb94884c2128fa3261550562df9bf27aed076c0115f9879e0e919cc5e4283bb37e7b1df51314f1d349d95108f8a2a81f0d138d4c284f3f095024201b5a416d40579256070795d1c6cea2a02ad65bcd088d8152c0c62ea9dfe90e00e750c01c8ea14420d64a739055bad95f8d0ffa4d35d4c02bb96fc8bb9b8135d0223' deposit_data_root: '0x86c1627b3353edd7aa56d84418b8a258820be0761a765c74920269297042df0d' deposit_message_root: '0x648c94f84c8f14ea4edd1b35557dd5715bba282cae987ca34eb2bafe6fdea792' fork_version: '0x01017000' amount: 32000000000 deposit_cli_version: 2.7.0 status_estimates: estimated_active_at: '2023-10-19T10:09:36Z' estimated_exit_at: '2023-10-19T10:08:00Z' estimated_withdrawal_at: '2023-10-23T14:49:36Z' on_demand_exit: requested_at: '2023-10-20T17:10:52Z' approved_at: '2023-10-20T17:11:05Z' submitted_at: '2023-10-20T17:22:00Z' request_id: 9b41a113-44c5-4b6a-8493-78e6046b830e exit_message: encrypted_value: gk+W8XGB9bXtueP02sHh2kz4gSsj8T06sd/yXRnJM0oUAo0pvmKNf2pk3rqcLMWfPTrTZmx32BzN/8JRN+WpfyUrdtPVuSYMsyVWxWGIYeLXvBSuZoyzYfPMOXf8eg6CLz0RPZovoYood2M9aTFT2/3StyWO/Pq6aZus0luhksijwPftuAkErQgC09NHRgeb7vyhd3ZYiHPKKYUAjEIR3wllcxhFavTAFA8f1ImbZIZGRVkoykiswhcVjIjAFMSAah18IXSWRL2rDSKZvbDN6ZgKHg+J33LF55SihheOPaCNJe0j2xGczWGzXP4HzqOnlSS1aiz2XGtcaHg99be7wOduKVS4+cEaTX8JmMxKKc1L5kJ1kdOrqP9VRKa7pIkOhZr3OCDtrDaN5Mr3e+dfk4EsN8oMcqif2sLBVZoe1end0bR/3nhjGE24trrs4x8ljqE+xjMEM6JBLyWI4IhXZMxR6N3IXoHT1NPnq9lWYdKnqpOkhRkcUMNVuyHbXdh9ZD3VRLoL6eFpI+6GIbmlwOlbHMGf1pfND20NEEyyfa8F6krh+uhrga5FYg9W7/fuA+FjDEQCqe2ZU7usWQBWjJ4fCw3KHV3eMcH9jhxICHudicoxz8CQmcC32+iCYi6/ri+OCNkdEbqLkeJuFHZv1gsXEApjRdde9xq1wmm+Uvg= fork_version: '0x01017000' balances: actual: '32.5' pending_deposit: '0.0' pending_topups: '0.0' pending_withdrawals: '0.0' '404': description: Not found '401': description: Invalid API key "/partners/ethereum/validators": get: summary: List Ethereum Validators tags: - Partners - Ethereum operationId: partner_ethereum_validators parameters: - name: network in: query schema: type: string enum: - mainnet - hoodi example: hoodi required: true - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. responses: '200': description: Tracked validators list content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/partners_tracked_validator" meta: "$ref": "#/components/schemas/pagination" '401': description: Invalid API key "/polkadot/nomination_proxy": post: summary: Add Nomination proxy tags: - Polkadot operationId: polkadot-add-nomination-proxy parameters: [] responses: '202': description: Successfully accepted request content: application/json: schema: type: object properties: success: type: boolean example: true '401': description: Invalid API key '400': description: Bad request content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Unprocessable entity content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: "$ref": "#/components/schemas/nomination_proxy" required: true "/polkadot/nomination_proxy/revoke_proxy": post: summary: Revoke Nomination Proxy tags: - Polkadot operationId: polkadot-revoke-nomination-proxy parameters: [] responses: '202': description: Success sent revoke request content: application/json: schema: type: object properties: success: type: boolean example: true '401': description: Invalid API key '400': description: Bad request content: application/json: schema: "$ref": "#/components/schemas/error" '422': description: Unprocessable entity content: application/json: schema: "$ref": "#/components/schemas/error" requestBody: content: application/json: schema: "$ref": "#/components/schemas/revoke_proxy" required: true "/portfolio": get: summary: Portfolio operationId: portfolio responses: '401': description: Invalid API key '200': description: Success content: application/json: schema: type: object properties: data: type: array items: type: object properties: protocol: type: string description: Protocol rewards and balances are reported for, e.g. ethereum, solana etc. updated_at: type: string description: UTC Timestamp of the latest data included in the result started_at: type: string description: UTC Timestamp of the earliest data included in the result total_rewards_received: type: string description: Total amount of rewards received by the organization from started_at to updated_at. Expressed in the native token of the protocol. balance: type: string description: Sum of the latest balances of organization's delegations/validators at the updated_at timestamp. Expressed in the native token of the protocol. example: data: - protocol: ethereum updated_at: '2023-12-22T23:56:36Z' started_at: '2023-12-21T23:56:48Z' total_rewards_received: '30.298559165000000000' balance: '1120.000000000000000000' - protocol: solana updated_at: '2024-05-29T00:00:00Z' started_at: '2021-02-13T15:46:44Z' total_rewards_received: '4442.628005617' balance: '0.000000000' "/statements": get: summary: Statements tags: - Statements operationId: get-statements parameters: - name: month in: query schema: type: string example: 2024-04 required: true - name: page in: query required: false style: deepObject schema: type: object properties: number: type: integer example: 2 minimum: 1 description: The page number. size: type: integer example: 10 minimum: 1 maximum: 100 description: Number of items to include in the response. responses: '200': description: List of statements for the given month. content: application/json: schema: type: object properties: data: type: array items: "$ref": "#/components/schemas/monthly_statement" meta: "$ref": "#/components/schemas/pagination" example: data: - id: 61989868-2cfc-4027-b350-e239ddb1e10d type: staking_rewards month: 2024-04 csv_data: | ID,ACCOUNT_ID,ORGANIZATION_ID,CUSTOMER,PROTOCOL,ADDRESS,DATE,PRICE,TOTAL_STAKED,REWARDS_IN_PERIOD,GROSS_INFLATIONARY_REWARD,GROSS_TRANSACTION_REWARD,GROSS_REWARDS,ON_CHAIN_COMMISSION,FIGMENT_COMMISSION,NET_REWARDS,NET_REWARDS_USD,STAKING_INFO,REBATE 12,0015f00000CPz54AAD,{organization_1_id},ABC Investments,SOL,fdbfzf9drfjguufjggphz3sx4lqwe1l4q77s7j4hsxg7,2023-06-01,19.144465898736700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, 13,0015f00000CPz54AAD,{organization_1_id},ABC Investments,SOL,fdbfzf9drfjguufjggphz3sx4lqwe1l4q77s7j4hsxg7,2023-06-01,19.144465898736700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, 14,abc123,{organization_2_id},Org Number 2,DOT,djnbg7yjcwmwcdxje67k7mjcy5f6wcakowy7y8n1jtbq,2023-06-01,21.312226788443700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, - id: 51c46bc9-76c6-4b86-9d5f-64878c2f7739 type: revenue_share month: 2024-04 csv_data: | ID,ACCOUNT_ID,ORGANIZATION_ID,CUSTOMER,PROTOCOL,ADDRESS,DATE,PRICE,TOTAL_STAKED,REWARDS_IN_PERIOD,GROSS_INFLATIONARY_REWARD,GROSS_TRANSACTION_REWARD,GROSS_REWARDS,ON_CHAIN_COMMISSION,FIGMENT_COMMISSION,NET_REWARDS,NET_REWARDS_USD,STAKING_INFO,REBATE 12,0015f00000CPz54AAD,{organization_1_id},ABC Investments,SOL,fdbfzf9drfjguufjggphz3sx4lqwe1l4q77s7j4hsxg7,2023-06-01,19.144465898736700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, 13,0015f00000CPz54AAD,{organization_1_id},ABC Investments,SOL,fdbfzf9drfjguufjggphz3sx4lqwe1l4q77s7j4hsxg7,2023-06-01,19.144465898736700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, 14,abc123,{organization_2_id},Org Number 2,DOT,djnbg7yjcwmwcdxje67k7mjcy5f6wcakowy7y8n1jtbq,2023-06-01,21.312226788443700000,1946.996521134,0.848480079,0.9123441709677420,0.9123441709677420,0.9123441709677420,0.0638640919677419,0.06386409196774190,0.848480079,16.24369793817290,, meta: pagination: current_page: 1 total_pages: 1 total_item_count: 2 '422': description: Invalid month content: application/json: schema: "$ref": "#/components/schemas/error" '401': description: Invalid API key "/cardano/rewards": post: summary: ADA Rewards operationId: ada-rewards tags: - Cardano parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: delegator_addresses: type: string example: stake1uxcmc9r2t7cxs0zw8qm8ztg3twvxryzghsc8eszek6kuwms23gya4 description: The delegator address that received the reward. validator: type: string example: pool1fqwnqk3phwa2s5thgym8dw34pv0z67m526uqprnjh93cvzxymef description: The address of the validator which distributed the rewards epoch: type: string example: '417' description: The epoch number timestamp: type: string example: '2023-07-21T00:00:00Z' description: The timestamp of the end of the epoch rewards: type: array items: type: object description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). It also includes a type field which can be either member or leader. properties: text: type: string example: 823.370257 ADA description: The textual version of the other fields in the rewards object. currency: type: string example: ADA numeric: type: integer example: 823370257 exp: type: integer example: 6 type: type: string enum: - member - leader example: member balances: type: array items: type: object description: The account's staked balance to the pool for the epoch. properties: text: type: string example: '0' description: The textual version of the other fields in the balances object. currency: type: string example: ADA numeric: type: integer example: 0 exp: type: integer example: 6 stake_key_hash: type: string description: The stake key hash portion of the stake address. This is the bech32 decoded stake address with the first byte stripped and then hex encoded. It’s a common alternative way to search for a stake address. example: b1bc146a5fb0683c4e3836712d115b98619048bc307cc059b6adc76e meta: type: object properties: protocol: type: string example: cardano description: The name of the protocol queried. network: type: string example: mainnet description: The name of the network queried. time_rollup: type: string example: epoch description: The time rollup unit of the rewards. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: delegator_addresses: type: array description: Delegator address for which to fetch rewards items: type: string example: stake1uxcmc9r2t7cxs0zw8qm8ztg3twvxryzghsc8eszek6kuwms23gya4 start: type: string example: '2023-07-20' description: Epoch numbers (as integers) or timestamps (as strings "YYYY-MM-DD") end: type: string example: '2023-07-21' description: Epoch numbers (as integers) or timestamps (as strings "YYYY-MM-DD") required: - delegator_addresses - start - end "/cosmos/rewards": post: summary: ATOM Rewards operationId: atom-rewards tags: - Cosmos parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: delegator_address: type: string example: cosmos14p4dle9aastqyy8hasq2zev3hdkqj9crwfguf7 description: The delegator address that received the reward. validator: type: string example: cosmosvaloper1wqy2s6nwnxj57l0l5rdjxxr646p3al6y70435m description: The validator which distributed the rewards. timestamp: type: string example: '2023-07-21T00:00:00Z' description: The timestamp of the end of the reward distribution period. rewards: type: array items: type: object description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). properties: text: type: string example: '0.61414845761237760744712' description: The textual version of the other fields in the rewards object. currency: type: string example: ATOM numeric: type: integer example: 614148457612377607447120 exp: type: integer example: 24 balances: type: array items: type: object description: The account's current balance. properties: text: type: string example: '1000.07592' description: The textual version of the other fields in the balances object. currency: type: string example: ATOM numeric: type: integer example: 1000075920 exp: type: integer example: 6 description: The exponent used to calculate the final ATOM amount. meta: type: object properties: protocol: type: string example: cosmos description: The name of the protocol queried. network: type: string example: cosmoshub-4 description: The name of the network queried. time_rollup: type: string example: daily description: The time rollup unit of the rewards. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: delegator_addresses: type: array description: The delegator addresses for which you want to see rewards. items: type: string example: cosmos14p4dle9aastqyy8hasq2zev3hdkqj9crwfguf7 start: type: string example: '2023-07-20' description: Timestamps (as strings "YYYY-MM-DD") end: type: string example: '2023-07-21' description: Timestamps (as strings "YYYY-MM-DD") required: - delegator_addresses - start - end "/near/rewards": post: summary: NEAR Rewards operationId: near-rewards tags: - NEAR parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: delegator_address: type: string example: ccb593f13a9ee3eaba2b063265c5960406e1de3758d9d9d9eb87701e5c9dd8ed description: delegator address that received the rewards. validator: type: string example: figment.poolv1.near description: The validator that distributed the rewards epoch: type: string example: '75743490' description: The epoch number (only present when time_rollup is "epoch"). timestamp: type: string example: '2023-07-21T00:00:00Z' description: The timestamp of the end of the epoch or date in the daily time_rollup. rewards: type: array items: type: object description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). properties: text: type: string example: '0.000000000000000000001453' description: The textual version of the other fields in the rewards object. currency: type: string example: NEAR numeric: type: integer example: 1453 exp: type: integer example: 24 description: The exponent used to calculate the textual NEAR amount. balances: type: array items: type: object description: The account's staked balance to the validator for the period. properties: text: type: string example: '0.000000000548826223520098' description: The textual version of the account's staked balance to the validator for the period. currency: type: string example: NEAR numeric: type: integer example: 548826223520098 description: The account's staked balance to the validator for the period. exp: type: integer example: 24 description: The exponent used to calculate the textual NEAR amount. meta: type: object properties: protocol: type: string example: near description: The name of the protocol queried. network: type: string example: mainnet description: The name of the network queried. time_rollup: type: string example: epoch description: The unit of the time_rollup. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: delegator_addresses: type: array description: Delegator accounts addresses. items: type: string example: figment.near start: type: string example: '2023-07-20' description: Epoch numbers (as integers) or timestamps (as strings "YYYY-MM-DD") end: type: string example: '2023-07-21' description: Epoch numbers (as integers) or timestamps (as strings "YYYY-MM-DD") time_rollup: type: string description: Allows you to get rewards by day (if daily is passed). enum: - daily required: - delegator_addresses - time_rollup - start - end "/polkadot/rewards_rates": get: tags: - Polkadot summary: DOT Reward Rates operationId: polkadot-rewards-rates parameters: - in: query name: figment schema: type: boolean default: false required: false description: If true is passed, we will return the reward rate for Figment validators only. If omitted or any other value is passed, we will return the reward rate of the network as a whole. - in: query name: avg schema: type: string enum: - 7d default: 7d required: false description: Returns the 7 day moving average. The only value accepted is 7d, if no value is passed, the original behavior of returning a single day average ARR is used. - in: query name: decimal schema: type: integer default: 2 required: false description: Adds decimal places to the returned values. Accepts values 2, 3, 4, 5. If nothing is passed, it will default to 2. responses: '200': description: Rewards rates content: application/json: schema: type: object properties: data: type: array items: type: object properties: date: type: string example: '2023-07-05' description: Specific date associated with value (staking reward rates). value: type: string example: '11.03' description: Staking reward rates, in %. example: data: - date: '2023-08-29' value: '10.26' - date: '2023-08-28' value: '10.37' - date: '2023-08-27' value: '10.37' - date: '2023-08-26' value: '10.37' - date: '2023-08-25' value: '10.26' - date: '2023-08-24' value: '10.26' '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" "/polygon/rewards": post: summary: MATIC Rewards operationId: matic-rewards tags: - Polygon parameters: [] responses: '200': description: A rewards result set with metadata. content: application/json: schema: type: object properties: data: type: array items: type: object properties: delegator_address: type: string example: '0xA722e1F10Bc95c102251A13c2bbCB61A67257003' description: The account that received the reward. This is a checksummed ethereum address including lower case and capital letters. validator: type: string example: '0xF9e9b98dd99114C6C1B5C28Ae101849880E9542f' description: The "owner address" of the validator which distributed the rewards. checkpoint: type: string example: '45500' description: The checkpoint number. timestamp: type: string example: '2023-07-21T00:00:00Z' description: The timestamp of the end of the checkpoint. rewards: type: array items: type: object description: The formula to compute the final rewards in the currency unit is numeric x 10^(-exp). properties: text: type: string example: '0.000817335418355351' description: The textual version of the other fields in the rewards object. currency: type: string example: MATIC numeric: type: integer example: 817335418355351 exp: type: integer example: 18 balances: type: array items: type: object description: The account's current balance. properties: text: type: string example: '302.56' description: The textual version of the other fields in the balances object. currency: type: string example: MATIC numeric: type: integer example: 302560000000000000000 exp: type: integer example: 18 description: The exponent used to calculate the final MATIC amount. meta: type: object properties: protocol: type: string example: polygon description: The name of the protocol queried. network: type: string example: mainnet description: The name of the network queried. time_rollup: type: string example: checkpoint description: The unit of the period. '400': description: Parameter error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '401': description: Unauthorized content: application/json: schema: "$ref": "#/components/schemas/rewards_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/rewards_error" requestBody: content: application/json: schema: type: object properties: delegator_addresses: type: array description: Delegator addresses. items: type: string example: '0xA722e1F10Bc95c102251A13c2bbCB61A67257003' start: type: integer example: 45500 description: Either checkpoint (number) or timestamps (strings formatted like "YYYY-MM-DD"). end: type: integer example: 45501 description: Either checkpoint (number) or timestamps (strings formatted like "YYYY-MM-DD"). required: - delegator_addresses - start - end "/cardano/blockfrost_projects": get: summary: Get Blockfrost Projects tags: - Blockfrost Projects operationId: get-blockfrost-projects parameters: - name: page in: query required: false schema: type: object properties: number: type: integer example: 2 description: Current page number size: type: integer example: 10 description: Number of results per page responses: '200': description: List of Blockfrost projects content: application/json: schema: type: object properties: meta: "$ref": "#/components/schemas/meta" data: type: array items: "$ref": "#/components/schemas/blockfrost_project" '400': description: User error content: application/json: schema: "$ref": "#/components/schemas/staking_api_error" '401': description: Invalid API key post: summary: Add Blockfrost Project tags: - Blockfrost Projects operationId: add-blockfrost-project parameters: [] responses: '201': description: Added content: application/json: schema: type: object properties: data: "$ref": "#/components/schemas/blockfrost_project" '422': description: Unprocessable content: application/json: schema: "$ref": "#/components/schemas/staking_api_error" '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/staking_api_error" '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: network: type: string example: preprod project_id: type: string example: my-project-id "/cardano/blockfrost_projects/{id}": delete: summary: Remove Blockfrost Project tags: - Blockfrost Projects operationId: remove-blockfrost-projects parameters: - name: id in: path required: true example: 123 schema: type: string responses: '204': description: Removed '500': description: System error content: application/json: schema: "$ref": "#/components/schemas/staking_api_error" '401': description: Invalid API key "/flows": post: summary: Start new Flow tags: - Staking Flows operationId: create-flow parameters: [] responses: '201': description: Flow created content: application/json: schema: "$ref": "#/components/schemas/flow" '400': description: User error content: application/json: schema: type: object '422': description: Unprocessable entity content: application/json: schema: type: object '401': description: Invalid API key requestBody: content: application/json: schema: type: object properties: flow: type: object properties: protocol: type: string network: type: string operation: type: string required: - protocol - network - operation get: summary: Get flows tags: - Staking Flows operationId: get-flows responses: '200': description: Flows retrieved content: application/json: schema: type: object properties: meta: "$ref": "#/components/schemas/meta" data: type: array items: "$ref": "#/components/schemas/flow" "/flows/{id}": get: summary: Get flow tags: - Staking Flows operationId: get-flow parameters: - name: id in: path required: true schema: type: string responses: '200': description: Flow retrieved content: application/json: schema: "$ref": "#/components/schemas/flow" "/flows/{id}/next": put: summary: Transition Flow tags: - Staking Flows operationId: flow-next parameters: - name: id in: path required: true schema: type: string responses: '200': description: Flow transitioned content: application/json: schema: "$ref": "#/components/schemas/flow" requestBody: content: application/json: schema: type: object properties: name: type: string inputs: type: object required: true "/x402/supported": get: summary: Supported tags: - x402 responses: '200': description: Supported kinds enumerated by the facilitator. content: application/json: schema: "$ref": "#/components/schemas/SupportedResponse" '500': description: Unexpected enumeration failure. content: application/json: schema: "$ref": "#/components/schemas/FigmentError" "/x402/verify": post: summary: Verify description: Protocol-level rejections return HTTP 200 with `{isValid:false}`. Only malformed envelopes return 4xx. Scheme-specific payload shape is enforced by the registered scheme, not at the HTTP layer. tags: - x402 requestBody: content: application/json: schema: "$ref": "#/components/schemas/ProtocolBody" examples: svm-exact: summary: Solana, `exact` scheme value: x402Version: 2 paymentPayload: x402Version: 2 resource: url: https://example.com/protected-resource description: Example protected resource being paid for. accepted: scheme: exact network: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1 amount: '1000000' asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v payTo: MerchantAddr11111111111111111111111111111111 maxTimeoutSeconds: 120 extra: feePayer: FacilitatorSigner1111111111111111111111111 payload: transaction: AQAB...base64-encoded-partially-signed-solana-tx... paymentRequirements: scheme: exact network: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1 amount: '1000000' asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v payTo: MerchantAddr11111111111111111111111111111111 maxTimeoutSeconds: 120 extra: feePayer: FacilitatorSigner1111111111111111111111111 responses: '200': description: Verification result (valid or invalid). content: application/json: schema: "$ref": "#/components/schemas/VerifyResponse" '400': description: Malformed request body. content: application/json: schema: "$ref": "#/components/schemas/FigmentError" "/x402/settle": post: summary: Settle description: Screens payer + payee, reserves a dedup key, broadcasts the transaction, and records the settlement. Protocol-level failures return HTTP 200 with `{success:false, errorReason}`. tags: - x402 requestBody: content: application/json: schema: "$ref": "#/components/schemas/ProtocolBody" examples: svm-exact: summary: Solana, `exact` scheme value: x402Version: 2 paymentPayload: x402Version: 2 resource: url: https://example.com/protected-resource description: Example protected resource being paid for. accepted: scheme: exact network: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1 amount: '1000000' asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v payTo: MerchantAddr11111111111111111111111111111111 maxTimeoutSeconds: 120 extra: feePayer: FacilitatorSigner1111111111111111111111111 payload: transaction: AQAB...base64-encoded-partially-signed-solana-tx... paymentRequirements: scheme: exact network: solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1 amount: '1000000' asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v payTo: MerchantAddr11111111111111111111111111111111 maxTimeoutSeconds: 120 extra: feePayer: FacilitatorSigner1111111111111111111111111 responses: '200': description: Settlement result (success or protocol-level failure). content: application/json: schema: "$ref": "#/components/schemas/SettleResponse" '400': description: Malformed request body. content: application/json: schema: "$ref": "#/components/schemas/FigmentError" "/x402/partner_analytics": get: summary: Partner Analytics description: Returns settlement counts and USDC volume grouped by merchant + endpoint for the partner org identified. This is a Figment-added endpoint, so responses use the `{data, meta}` envelope, not a bare protocol body. tags: - x402 parameters: - schema: type: string enum: - 1d - 7d - 30d - 90d description: Lookback window. Defaults to `7d`. example: 7d required: false name: range in: query - schema: type: string description: Required. CAIP-2 network filter, or the alias solana-mainnet / solana-devnet. example: solana-mainnet required: true name: network in: query responses: '200': description: Usage rows for the partner, newest window first. content: application/json: schema: "$ref": "#/components/schemas/PartnerAnalyticsResponse" '400': description: Unsupported `range` value, or missing/invalid `network`. content: application/json: schema: "$ref": "#/components/schemas/FigmentError" '403': description: Missing or malformed tenant header (staging/production). content: application/json: schema: "$ref": "#/components/schemas/FigmentError" "/x402/settlement_reports": get: summary: Settlement Reports description: Pull your organization's settled payments as a daily rollup, grouped by buyer, merchant address, network, and token. tags: - x402 parameters: - schema: type: string description: YYYY-MM-DD, inclusive. Defaults to 60 days before today. Must not be more than 60 days before today. example: '2026-05-10' required: false name: start_date in: query - schema: type: string description: YYYY-MM-DD, inclusive. Defaults to today (UTC). example: '2026-07-09' required: false name: end_date in: query - schema: type: string description: Your own comma-separated merchant wallet addresses. example: 3fX8pQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9Pus required: false name: merchant_addresses in: query - schema: type: string description: CAIP-2 network filter, or the alias solana-mainnet / solana-devnet. example: solana-mainnet required: false name: network in: query - schema: type: string description: Payment token ticker, e.g. USDC. example: USDC required: false name: token in: query responses: '200': description: Daily settlement rollup rows for the tenant, newest day first. content: application/json: schema: "$ref": "#/components/schemas/SettlementReportResponse" '400': description: Invalid date, network, or token filter. content: application/json: schema: "$ref": "#/components/schemas/FigmentError" servers: - url: https://api.figment.io components: schemas: broadcast_transaction: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name transaction_hash: type: string example: '0xae96cb28f012f20a63118cf34f60de63c9884a483cc742d5f41a1aee6f5cd5f3' description: The transaction hash from the onchain broadcast. ethereum_broadcast_transaction: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name transaction_hash: type: string example: '0xae96cb28f012f20a63118cf34f60de63c9884a483cc742d5f41a1aee6f5cd5f3' description: The transaction hash from the onchain broadcast. activity: type: - object - 'null' description: The staking activity recorded for this broadcast. Typed (stake/delegation/consolidation/undelegation) when the transaction is a recognized staking action; `type` is null otherwise. properties: id: type: string format: uuid example: 3f1c9b2a-8e4d-4a6b-9c1e-2d5f7a8b0c3d description: Activity UUID. type: type: - string - 'null' enum: - stake - delegation - consolidation - undelegation - unstake - upgrade

example: stake description: Activity type, or null when the transaction was not a recognized staking action. status: type: string enum: - pending - complete - failed example: pending description: Activity-life status. network: type: string enum: - mainnet - hoodi example: hoodi protocol: type: string example: ethereum amount: type: number example: 32.0 description: Amount in the asset major unit. currency: type: - string - 'null' example: ETH timestamp: type: - string - 'null' example: '2024-03-12T00:00:00.000Z' estimated_completed_at: type: - string - 'null' delegation_address: type: - string - 'null' tx: type: object description: On-chain transaction axis. Distinct from the activity-life `status`. properties: hash: type: - string - 'null' example: 0xae96cb… status: type: - string - 'null' enum: - in_progress - confirmed - failed - expired

example: in_progress details: type: - object - 'null' broadcast_exit_message: type: object properties: network: type: string example: hoodi enum: - mainnet - hoodi description: Network name epoch: type: string example: '182738' description: Epoch as stated in the PSET validator_index: type: string example: '483128' description: The validator's index as stated in the PSET signature: type: string example: '0x97f0dde45b0be31fd9a76a60a25216c7b7a14f6fd21a8232cdd8cba8c419c0a618589e98ff8b8a253c9975adc11746de0f34a4d223c7927b8547d19035aeaa48f980e8e510e5278b6a901665aa24d6c54d332d39924ba3d263861a5f1fc3234d' description: Signature as stated in the PSET nomination_proxy: type: object properties: stash_account_address: type: string example: 5CUwmRuV8e5yV15eaktTwW4AMkBnf2anJvehKNq9ZugXBvUh description: A valid Polkadot address. controller_account_address: type: string example: 5FH7R79Ph88uC4xJaWv3UXRxVrYVfuRPcPuQiiRJ5B8zKbCd description: A valid Polkadot address. proxy_account_address: type: string example: 5CDTPiGKvMFikx83G5vZz6jQMt7EokMDpkZ5ErSvG6ea27SS description: A valid Polkadot address. qtx_dot_bonded: type: string example: '10' description: An amount in DOT network: type: string example: polkadot enum: - polkadot - westend required: - stash_account_address - controller_account_address - proxy_account_address - qtx_dot_bonded - network revoke_proxy: type: object properties: stash_account_address: type: string example: 5CUwmRuV8e5yV15eaktTwW4AMkBnf2anJvehKNq9ZugXBvUh description: A valid Polkadot address. controller_account_address: type: string example: 5FH7R79Ph88uC4xJaWv3UXRxVrYVfuRPcPuQiiRJ5B8zKbCd description: A valid Polkadot address. network: type: string example: polkadot enum: - polkadot - westend required: - stash_account_address - controller_account_address - network validator: type: object properties: id: type: string example: 031af36c-508a-4f3d-84dd-f46d9e59428f description: A unique UUID for the validator. index: type: integer example: '123456' description: Validator's onchain index nullable: true network: type: string example: hoodi enum: - mainnet - hoodi pubkey: type: string example: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' description: The pubkey for the validator. Prefixed with `0x`. withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' status: type: string nullable: true example: funding_requested description: The current status of the validator. withdrawal_credentials: type: string nullable: true example: '0x010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1' description: Withdrawal credentials for the validator funds to be withdrawn upon exit. fee_recipient_address: type: string nullable: true example: '0x781462762B706AA7c1DA71FBA1a545724928b81f' description: The fee recipient address that receives Execution Layer fees. For Figment-operated validators only. net_fee_payout_address: type: string nullable: true example: '0x781462762B706AA7c1DA71FBA1a545724928b81f' description: The net payout address that receives the customer's share of Execution Layer fees. For Figment-operated validators only. region: type: string nullable: true example: ca-central-1 description: The geographic region in which the validator operates. For Figment-operated validators only. deposit_data: type: object nullable: true description: Data for funding the validator. properties: amount: type: integer nullable: true description: An amount of ETH in GWEI required to deposit example: 32000000000 signature: type: string nullable: true example: '0xaab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49' description: A "proof of possession" which signs over pubkey, withdrawal_credentials, and amount using the validator private key. figment_signature: type: string nullable: true example: 0xZDFlZjhkNDY4ZWY1M2Q4MjM2OGQyMDI2ZTMyMWFiMmM2ZDQ0ZjQ0YzMzYjdiOWYyMjM2OWJmNmRjZjM3ZmIwMjA4ZjgyZGQ2YjQ4NTMyNWNlMWJiZjVhZWM3YWQ0NWJi description: A base64 encoded signature of the validator's public key, signed by a private key maintained by Figment. deposit_data_root: type: string nullable: true example: b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422 description: The deposit data. deposit_message_root: type: string nullable: true example: 026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44 description: The deposit message. fork_version: type: string nullable: true example: '0x00000000' description: The genesis fork version. deposit_cli_version: type: string nullable: true example: 1.2.0 description: The version of the CLI software used when making the deposit. status_history: type: object nullable: true description: Details of the status history. properties: events: type: array items: type: object properties: status: type: string example: funding_requested changed_at: type: string example: '2023-07-01T00:00:00.000Z' description: When the status changed. status_estimates: type: object nullable: true description: Estimates for the validator. properties: estimated_active_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the validator will become active and start earning rewards. estimated_exit_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the validator will exit and stop earning rewards. estimated_withdrawal_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the principal will be withdrawable. on_demand_exit: type: object nullable: true description: Details of the on-demand exit. properties: requested_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the customer request to exit this validator, either through the Figment app or Staking API. approved_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the time at which the customer exit request was approved by Figment. submitted_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the time at which the validator's exit transaction was submitted to Ethereum's consensus layer. request_id: type: string format: uuid nullable: true example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: The unique request ID (which may be the Staking API flow ID) used to request an exit for this validator. exit_message: type: object nullable: true description: Details of the exit message. properties: fork_version: type: string nullable: true example: '0x04001020' description: A pre-signed exit message fork version. encrypted_value: type: string nullable: true example: |- -----BEGIN PGP MESSAGE----- Version: 2023-03-03 (159679) Comment: 0xf27394bf199c58623206923c26fd186fd1e91302d09f22aaf40c053d8725364b05199bebe91d3a6737aebe8cc5a1b202

wV7DhAgK6qzUbbYSAQdA069SH+2v3hkzd/REedn8/1k2eVK0GGV4r4lzGf5Jg3Ew /cFSwaXhaBgfinFXMCmYJtYZF06oZcH4XzZm3IPeXktS6wfScogE+W/eapX0nHlT 0sF6Bb/uJAExeOtRurwgqDkc/D+g+BioSsg2XQ6O9a6SUj7bb2plX2E9JPhSMhPY zLXA4cB8F9IjpSv/Ofhlbid9+cWnZLDHrU69Q0nCcTwZTQZbOoOi7Mj04pKEHux1 vaalZ4O8N5ptJwWygB7NMxZAkosruPURQ4HS2EaFjr5Fjle6+pfYN1y39hOvsoQe T3E1/4DbfmFbDNjBqwjAJLkmEBu18AKgxJtEjQaCoeF1Q/WTIA8JBX3yy14AZI3q oYZ5gd5QdVo24aoYrm75rQO0GfZqvU5B/kKezrA+eFngO79bgppyjIacItNaHEaD kQfO+6SE8A0mQXxQr0IqJiiNhrG8tPhDcLZcvKRXPoGIkQcFNCPiOehFsB6drhP6 7v/P81fj63df8fk6FBkiDHIdros8xj9PGHbYNrCNsw== =DiMO -----END PGP MESSAGE----- description: A pre-signed exit message encrypted with the public encryption key you've stored with Figment. See https://docs.figment.io/docs/exiting-eth-validator. staking_request: type: object nullable: true properties: id: type: string example: f8bd4623-39ed-46ec-8518-991792665e56 description: The ID of the staking position. created_at: type: string example: '2023-07-01T00:00:00.000Z' description: The time at which the staking request was created. balances: type: object nullable: true description: Balance information for the validator. properties: actual: type: string example: '32.0' description: Current staked balance in ETH pending_deposit: type: string example: '0.0' description: Pending deposit amount in ETH pending_topups: type: string example: '1.5' description: Sum of pending delegation activities in ETH pending_withdrawals: type: string example: '0.5' description: Sum of pending undelegation activities in ETH validators_index: type: object properties: data: type: array items: type: object properties: protocol: type: string example: solana description: Protocol the validator runs on. network: type: string example: mainnet description: Network within the protocol. address: type: string example: CcaHc2L43ZWjwCHART3oZoJvHLAe9hzT2DJNUpBzoTN1 description: Canonical public identifier for the validator on this protocol. type: type: string example: solana_vote description: Identifier type for the address (e.g. solana_vote, operator, validator, finality_provider). meta: type: object properties: pagination: type: object properties: current_page: type: integer example: 1 total_pages: type: integer example: 10 total_item_count: type: integer example: 1000 has_next: type: boolean example: true validator_provision_response: type: object properties: id: type: string example: 031af36c-508a-4f3d-84dd-f46d9e59428f description: A unique UUID for the validator. index: type: integer example: '123456' description: Validator's onchain index nullable: true network: type: string example: hoodi enum: - mainnet - hoodi pubkey: type: string example: '0xd1ef8d468ef53d82368d2026e321ab2c6d44f44c33b7b9f22369bf6dcf37fb0208f82dd6b485325ce1bbf5aec7ad45bb' description: The pubkey for the validator. Prefixed with `0x`. withdrawal_address: type: string example: '0xE40F80618324C814cD444434670a44ba4583aE38' nullable: false status: type: string nullable: false example: funding_requested description: The current status of the validator. withdrawal_credentials: type: string nullable: false example: '0x010000000000000000000000fc438e6cc4b230eb5bfaae1337c3f5da2b9140f1' description: Withdrawal credentials for the validator funds to be withdrawn upon exit. fee_recipient_address: type: string nullable: false example: '0x781462762B706AA7c1DA71FBA1a545724928b81f' description: The fee recipient address that receives Execution Layer fees. For Figment-operated validators only. net_fee_payout_address: type: string nullable: false example: '0x781462762B706AA7c1DA71FBA1a545724928b81f' description: The net payout address that receives the customer's share of Execution Layer fees. For Figment-operated validators only. region: type: string nullable: false example: ca-central-1 description: The geographic region in which the validator operates. For Figment-operated validators only. deposit_data: type: object nullable: false description: Data for funding the validator. properties: amount: type: integer nullable: true description: An amount of ETH in GWEI required to deposit example: 32000000000 signature: type: string nullable: true example: '0xaab7e3b41689fced6c3437a6bc5caf471ed319b94ad2642c47c5f641d5e3a046432171d47d48cd7a3e8a323939d4976c1315ad4dae134c421214673ddff9105ef1bb7f79c1babc6cd9c31428d5e44472164e9c9fccfd10fb9768c0855b194f49' description: A "proof of possession" which signs over pubkey, withdrawal_credentials, and amount using the validator private key. figment_signature: type: string nullable: true example: 0xZDFlZjhkNDY4ZWY1M2Q4MjM2OGQyMDI2ZTMyMWFiMmM2ZDQ0ZjQ0YzMzYjdiOWYyMjM2OWJmNmRjZjM3ZmIwMjA4ZjgyZGQ2YjQ4NTMyNWNlMWJiZjVhZWM3YWQ0NWJi description: A base64 encoded signature of the validator's public key, signed by a private key maintained by Figment. deposit_data_root: type: string nullable: true example: b2f5083221d6b61f2237af155c07c746f6a75c7d24dfe418106efdf87e9b9422 description: The deposit data. deposit_message_root: type: string nullable: true example: 026cbefa013e03a3d81592b7a5f6205773c12a6f7674529e497e9a4eb2df2d44 description: The deposit message. fork_version: type: string nullable: true example: '0x00000000' description: The genesis fork version. deposit_cli_version: type: string nullable: true example: 1.2.0 description: The version of the CLI software used when making the deposit. status_history: type: object nullable: false description: Details of the status history. properties: events: type: array items: type: object properties: status: type: string example: funding_requested changed_at: type: string example: '2023-07-01T00:00:00.000Z' description: When the status changed. status_estimates: type: object nullable: false description: Estimates for the validator. properties: estimated_active_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the validator will become active and start earning rewards. estimated_exit_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the validator will exit and stop earning rewards. estimated_withdrawal_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: Estimate of when the principal will be withdrawable. on_demand_exit: type: object nullable: false description: Details of the on-demand exit. properties: requested_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the customer request to exit this validator, either through the Figment app or Staking API. approved_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the time at which the customer exit request was approved by Figment. submitted_at: type: string nullable: true example: '2023-07-01T00:00:00.000Z' description: A timestamp representing the time at which the validator's exit transaction was submitted to Ethereum's consensus layer. request_id: type: string format: uuid nullable: true example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: The unique request ID (which may be the Staking API flow ID) used to request an exit for this validator. exit_message: type: object nullable: true description: Details of the exit message. properties: fork_version: type: string nullable: true example: '0x04001020' description: A pre-signed exit message fork version. encrypted_value: type: string nullable: true example: |- -----BEGIN PGP MESSAGE----- Version: 2023-03-03 (159679) Comment: 0xf27394bf199c58623206923c26fd186fd1e91302d09f22aaf40c053d8725364b05199bebe91d3a6737aebe8cc5a1b202