Skip to main content

RestApi

Struct RestApi 

Source
pub struct RestApi { /* private fields */ }

Implementations§

Source§

impl RestApi

Source

pub fn new(configuration: ConfigurationRestApi) -> Self

Source

pub async fn send_request<R: DeserializeOwned + Send + 'static>( &self, endpoint: &str, method: Method, query_params: BTreeMap<String, Value>, body_params: BTreeMap<String, Value>, ) -> Result<RestApiResponse<R>>

Send an unsigned request to the API

§Arguments
  • endpoint - The API endpoint to send the request to
  • method - The HTTP method to use for the request
  • query_params - A map of query parameters to send with the request
  • body_params - A map of body parameters to send with the request
§Returns

A RestApiResponse containing the deserialized response data on success, or an error if the request fails

§Errors

Returns an anyhow::Error if the HTTP request fails or if parsing the response fails

Source

pub async fn send_signed_request<R: DeserializeOwned + Send + 'static>( &self, endpoint: &str, method: Method, query_params: BTreeMap<String, Value>, body_params: BTreeMap<String, Value>, ) -> Result<RestApiResponse<R>>

Send a signed request to the API

§Arguments
  • endpoint - The API endpoint to send the request to
  • method - The HTTP method to use for the request
  • query_params - A map of query parameters to send with the request
  • body_params - A map of body parameters to send with the request
§Returns

A RestApiResponse containing the deserialized response data on success, or an error if the request fails

§Errors

Returns an anyhow::Error if the HTTP request fails or if parsing the response fails

Source

pub async fn eth_staking_account( &self, params: EthStakingAccountParams, ) -> Result<RestApiResponse<EthStakingAccountResponse>>

ETH Staking account(USER_DATA)

ETH Staking account

Weight: 150

§Arguments
§Returns

RestApiResponse<models::EthStakingAccountResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_current_eth_staking_quota( &self, params: GetCurrentEthStakingQuotaParams, ) -> Result<RestApiResponse<GetCurrentEthStakingQuotaResponse>>

Get current ETH staking quota(USER_DATA)

Get current ETH staking quota

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetCurrentEthStakingQuotaResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_eth_redemption_history( &self, params: GetEthRedemptionHistoryParams, ) -> Result<RestApiResponse<GetEthRedemptionHistoryResponse>>

Get ETH redemption history(USER_DATA)

Get ETH redemption history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetEthRedemptionHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_eth_staking_history( &self, params: GetEthStakingHistoryParams, ) -> Result<RestApiResponse<GetEthStakingHistoryResponse>>

Get ETH staking history(USER_DATA)

Get ETH staking history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetEthStakingHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_wbeth_rate_history( &self, params: GetWbethRateHistoryParams, ) -> Result<RestApiResponse<GetWbethRateHistoryResponse>>

Get WBETH Rate History(USER_DATA)

Get WBETH Rate History

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetWbethRateHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_wbeth_rewards_history( &self, params: GetWbethRewardsHistoryParams, ) -> Result<RestApiResponse<GetWbethRewardsHistoryResponse>>

Get WBETH rewards history(USER_DATA)

Get WBETH rewards history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetWbethRewardsHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_wbeth_unwrap_history( &self, params: GetWbethUnwrapHistoryParams, ) -> Result<RestApiResponse<GetWbethUnwrapHistoryResponse>>

Get WBETH unwrap history(USER_DATA)

Get WBETH unwrap history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetWbethUnwrapHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_wbeth_wrap_history( &self, params: GetWbethWrapHistoryParams, ) -> Result<RestApiResponse<GetWbethWrapHistoryResponse>>

Get WBETH wrap history(USER_DATA)

Get WBETH wrap history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetWbethWrapHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn redeem_eth( &self, params: RedeemEthParams, ) -> Result<RestApiResponse<RedeemEthResponse>>

Redeem ETH(TRADE)

Redeem WBETH or BETH and get ETH

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::RedeemEthResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn subscribe_eth_staking( &self, params: SubscribeEthStakingParams, ) -> Result<RestApiResponse<SubscribeEthStakingResponse>>

Subscribe ETH Staking(TRADE)

Subscribe ETH Staking

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::SubscribeEthStakingResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn wrap_beth( &self, params: WrapBethParams, ) -> Result<RestApiResponse<WrapBethResponse>>

Wrap BETH(TRADE)

Wrap BETH

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::WrapBethResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_personal_left_quota( &self, params: GetOnChainYieldsLockedPersonalLeftQuotaParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedPersonalLeftQuotaResponse>>

Get On-chain Yields Locked Personal Left Quota (USER_DATA)

Get On-chain Yields Locked Personal Left Quota

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedPersonalLeftQuotaResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_product_list( &self, params: GetOnChainYieldsLockedProductListParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedProductListResponse>>

Get On-chain Yields Locked Product List (USER_DATA)

Get available On-chain Yields Locked product list

  • Get available On-chain Yields Locked product list

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedProductListResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_product_position( &self, params: GetOnChainYieldsLockedProductPositionParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedProductPositionResponse>>

Get On-chain Yields Locked Product Position (USER_DATA)

Get On-chain Yields Locked Product Position

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedProductPositionResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_redemption_record( &self, params: GetOnChainYieldsLockedRedemptionRecordParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedRedemptionRecordResponse>>

Get On-chain Yields Locked Redemption Record (USER_DATA)

Get On-chain Yields Locked Redemption Record

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedRedemptionRecordResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_rewards_history( &self, params: GetOnChainYieldsLockedRewardsHistoryParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedRewardsHistoryResponse>>

Get On-chain Yields Locked Rewards History (USER_DATA)

Get On-chain Yields Locked Rewards History

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedRewardsHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_subscription_preview( &self, params: GetOnChainYieldsLockedSubscriptionPreviewParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedSubscriptionPreviewResponse>>

Get On-chain Yields Locked Subscription Preview (USER_DATA)

Get On-chain Yields Locked Subscription Preview

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedSubscriptionPreviewResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_on_chain_yields_locked_subscription_record( &self, params: GetOnChainYieldsLockedSubscriptionRecordParams, ) -> Result<RestApiResponse<GetOnChainYieldsLockedSubscriptionRecordResponse>>

Get On-chain Yields Locked Subscription Record (USER_DATA)

Get On-chain Yields Locked Subscription Record

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetOnChainYieldsLockedSubscriptionRecordResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn on_chain_yields_account( &self, params: OnChainYieldsAccountParams, ) -> Result<RestApiResponse<OnChainYieldsAccountResponse>>

On-chain Yields Account (USER_DATA)

On-chain Yields Account query

Weight: 50

§Arguments
§Returns

RestApiResponse<models::OnChainYieldsAccountResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn redeem_on_chain_yields_locked_product( &self, params: RedeemOnChainYieldsLockedProductParams, ) -> Result<RestApiResponse<RedeemOnChainYieldsLockedProductResponse>>

Redeem On-chain Yields Locked Product (TRADE)

Redeem On-chain Yields Locked Product

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 1/3s per account

§Arguments
§Returns

RestApiResponse<models::RedeemOnChainYieldsLockedProductResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn set_on_chain_yields_locked_auto_subscribe( &self, params: SetOnChainYieldsLockedAutoSubscribeParams, ) -> Result<RestApiResponse<SetOnChainYieldsLockedAutoSubscribeResponse>>

Set On-chain Yields Locked Auto Subscribe(USER_DATA)

Set On-chain Yield locked auto subscribe

Weight: 50

§Arguments
§Returns

RestApiResponse<models::SetOnChainYieldsLockedAutoSubscribeResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn set_on_chain_yields_locked_product_redeem_option( &self, params: SetOnChainYieldsLockedProductRedeemOptionParams, ) -> Result<RestApiResponse<SetOnChainYieldsLockedProductRedeemOptionResponse>>

Set On-chain Yields Locked Product Redeem Option(USER_DATA)

Set On-chain Yields redeem option for Locked product

Weight: 50

§Arguments
§Returns

RestApiResponse<models::SetOnChainYieldsLockedProductRedeemOptionResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn subscribe_on_chain_yields_locked_product( &self, params: SubscribeOnChainYieldsLockedProductParams, ) -> Result<RestApiResponse<SubscribeOnChainYieldsLockedProductResponse>>

Subscribe On-chain Yields Locked Product(TRADE)

Subscribe On-chain Yields Locked Product

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 200

§Arguments
§Returns

RestApiResponse<models::SubscribeOnChainYieldsLockedProductResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_soft_staking_product_list( &self, params: GetSoftStakingProductListParams, ) -> Result<RestApiResponse<GetSoftStakingProductListResponse>>

Get Soft Staking Product List (USER_DATA)

Get the available Soft Staking product list.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetSoftStakingProductListResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_soft_staking_rewards_history( &self, params: GetSoftStakingRewardsHistoryParams, ) -> Result<RestApiResponse<GetSoftStakingRewardsHistoryResponse>>

Get Soft Staking Rewards History(USER_DATA)

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::GetSoftStakingRewardsHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn set_soft_staking( &self, params: SetSoftStakingParams, ) -> Result<RestApiResponse<SetSoftStakingResponse>>

Set Soft Staking (USER_DATA)

Enable or disable Soft Staking.

Weight: 50

§Arguments
§Returns

RestApiResponse<models::SetSoftStakingResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn claim_boost_rewards( &self, params: ClaimBoostRewardsParams, ) -> Result<RestApiResponse<ClaimBoostRewardsResponse>>

Claim Boost Rewards(TRADE)

Claim Boost APR Airdrop Rewards

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::ClaimBoostRewardsResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_bnsol_rate_history( &self, params: GetBnsolRateHistoryParams, ) -> Result<RestApiResponse<GetBnsolRateHistoryResponse>>

Get BNSOL Rate History(USER_DATA)

Get BNSOL Rate History

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetBnsolRateHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_bnsol_rewards_history( &self, params: GetBnsolRewardsHistoryParams, ) -> Result<RestApiResponse<GetBnsolRewardsHistoryResponse>>

Get BNSOL rewards history(USER_DATA)

Get BNSOL rewards history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetBnsolRewardsHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_boost_rewards_history( &self, params: GetBoostRewardsHistoryParams, ) -> Result<RestApiResponse<GetBoostRewardsHistoryResponse>>

Get Boost Rewards History(USER_DATA)

Get Boost rewards history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetBoostRewardsHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_sol_redemption_history( &self, params: GetSolRedemptionHistoryParams, ) -> Result<RestApiResponse<GetSolRedemptionHistoryResponse>>

Get SOL redemption history(USER_DATA)

Get SOL redemption history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetSolRedemptionHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_sol_staking_history( &self, params: GetSolStakingHistoryParams, ) -> Result<RestApiResponse<GetSolStakingHistoryResponse>>

Get SOL staking history(USER_DATA)

Get SOL staking history

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetSolStakingHistoryResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_sol_staking_quota_details( &self, params: GetSolStakingQuotaDetailsParams, ) -> Result<RestApiResponse<GetSolStakingQuotaDetailsResponse>>

Get SOL staking quota details(USER_DATA)

Get SOL staking quota

Weight: 150

§Arguments
§Returns

RestApiResponse<models::GetSolStakingQuotaDetailsResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn get_unclaimed_rewards( &self, params: GetUnclaimedRewardsParams, ) -> Result<RestApiResponse<Vec<GetUnclaimedRewardsResponseInner>>>

Get Unclaimed Rewards(USER_DATA)

Get Unclaimed rewards

  • The time between startTime and endTime cannot be longer than 3 months.
  • If startTime and endTime are both not sent, then the last 30 days’ data will be returned.
  • If startTime is sent but endTime is not sent, the next 30 days’ data beginning from startTime will be returned.
  • If endTime is sent but startTime is not sent, the 30 days’ data before endTime will be returned.

Weight: 150

§Arguments
§Returns

RestApiResponse<Vec<models::GetUnclaimedRewardsResponseInner>> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn redeem_sol( &self, params: RedeemSolParams, ) -> Result<RestApiResponse<RedeemSolResponse>>

Redeem SOL(TRADE)

Redeem BNSOL get SOL

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::RedeemSolResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn sol_staking_account( &self, params: SolStakingAccountParams, ) -> Result<RestApiResponse<SolStakingAccountResponse>>

SOL Staking account(USER_DATA)

SOL Staking account

Weight: 150

§Arguments
§Returns

RestApiResponse<models::SolStakingAccountResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Source

pub async fn subscribe_sol_staking( &self, params: SubscribeSolStakingParams, ) -> Result<RestApiResponse<SubscribeSolStakingResponse>>

Subscribe SOL Staking(TRADE)

Subscribe SOL Staking

  • You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint.

Weight: 150

§Arguments
§Returns

RestApiResponse<models::SubscribeSolStakingResponse> on success.

§Errors

This function will return an anyhow::Error if:

  • the HTTP request fails
  • any parameter is invalid
  • the response cannot be parsed
  • or one of the following occurs:
    • RequiredError
    • ConnectorClientError
    • UnauthorizedError
    • ForbiddenError
    • TooManyRequestsError
    • RateLimitBanError
    • ServerError
    • NotFoundError
    • NetworkError
    • BadRequestError

For full API details, see the Binance API Documentation.

Trait Implementations§

Source§

impl Clone for RestApi

Source§

fn clone(&self) -> RestApi

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RestApi

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more