pub struct CoinbaseIntxHttpInnerClient { /* private fields */ }
Expand description
Provides a lower-level HTTP client for connecting to the Coinbase International REST API.
This client wraps the underlying HttpClient
to handle functionality
specific to Coinbase, such as request signing (for authenticated endpoints),
forming request URLs, and deserializing responses into specific data models.
Implementations§
Source§impl CoinbaseIntxHttpInnerClient
impl CoinbaseIntxHttpInnerClient
Sourcepub fn new(base_url: Option<String>, timeout_secs: Option<u64>) -> Self
pub fn new(base_url: Option<String>, timeout_secs: Option<u64>) -> Self
Creates a new CoinbaseIntxHttpClient
using the default Coinbase HTTP URL,
optionally overridden with a custom base url.
This version of the client has no credentials, so it can only call publicly accessible endpoints.
Sourcepub fn with_credentials(
api_key: String,
api_secret: String,
api_passphrase: String,
base_url: String,
timeout_secs: Option<u64>,
) -> Self
pub fn with_credentials( api_key: String, api_secret: String, api_passphrase: String, base_url: String, timeout_secs: Option<u64>, ) -> Self
Creates a new CoinbaseIntxHttpClient
configured with credentials
for authenticated requests, optionally using a custom base url.
Sourcepub async fn http_list_assets(
&self,
) -> Result<Vec<CoinbaseIntxAsset>, CoinbaseIntxHttpError>
pub async fn http_list_assets( &self, ) -> Result<Vec<CoinbaseIntxAsset>, CoinbaseIntxHttpError>
Requests a list of all supported assets.
See https://docs.cdp.coinbase.com/intx/reference/getassets.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_asset_details(
&self,
asset: &str,
) -> Result<CoinbaseIntxAsset, CoinbaseIntxHttpError>
pub async fn http_get_asset_details( &self, asset: &str, ) -> Result<CoinbaseIntxAsset, CoinbaseIntxHttpError>
Requests information for a specific asset.
See https://docs.cdp.coinbase.com/intx/reference/getasset.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_instruments(
&self,
) -> Result<Vec<CoinbaseIntxInstrument>, CoinbaseIntxHttpError>
pub async fn http_list_instruments( &self, ) -> Result<Vec<CoinbaseIntxInstrument>, CoinbaseIntxHttpError>
Requests all instruments available for trading.
See https://docs.cdp.coinbase.com/intx/reference/getinstruments.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_instrument_details(
&self,
symbol: &str,
) -> Result<CoinbaseIntxInstrument, CoinbaseIntxHttpError>
pub async fn http_get_instrument_details( &self, symbol: &str, ) -> Result<CoinbaseIntxInstrument, CoinbaseIntxHttpError>
Retrieve a list of instruments with open contracts.
See https://docs.cdp.coinbase.com/intx/reference/getinstrument.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_fee_rate_tiers(
&self,
) -> Result<Vec<CoinbaseIntxFeeTier>, CoinbaseIntxHttpError>
pub async fn http_list_fee_rate_tiers( &self, ) -> Result<Vec<CoinbaseIntxFeeTier>, CoinbaseIntxHttpError>
Return all the fee rate tiers.
See https://docs.cdp.coinbase.com/intx/reference/getassets.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_portfolios(
&self,
) -> Result<Vec<CoinbaseIntxPortfolio>, CoinbaseIntxHttpError>
pub async fn http_list_portfolios( &self, ) -> Result<Vec<CoinbaseIntxPortfolio>, CoinbaseIntxHttpError>
List all user portfolios.
See https://docs.cdp.coinbase.com/intx/reference/getportfolios.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_portfolio(
&self,
portfolio_id: &str,
) -> Result<CoinbaseIntxPortfolio, CoinbaseIntxHttpError>
pub async fn http_get_portfolio( &self, portfolio_id: &str, ) -> Result<CoinbaseIntxPortfolio, CoinbaseIntxHttpError>
Returns the user’s specified portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfolio.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_portfolio_details(
&self,
portfolio_id: &str,
) -> Result<CoinbaseIntxPortfolioDetails, CoinbaseIntxHttpError>
pub async fn http_get_portfolio_details( &self, portfolio_id: &str, ) -> Result<CoinbaseIntxPortfolioDetails, CoinbaseIntxHttpError>
Retrieves the summary, positions, and balances of a portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliodetail.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_portfolio_summary(
&self,
portfolio_id: &str,
) -> Result<CoinbaseIntxPortfolioSummary, CoinbaseIntxHttpError>
pub async fn http_get_portfolio_summary( &self, portfolio_id: &str, ) -> Result<CoinbaseIntxPortfolioSummary, CoinbaseIntxHttpError>
Retrieves the high level overview of a portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliosummary.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_portfolio_balances(
&self,
portfolio_id: &str,
) -> Result<Vec<CoinbaseIntxBalance>, CoinbaseIntxHttpError>
pub async fn http_list_portfolio_balances( &self, portfolio_id: &str, ) -> Result<Vec<CoinbaseIntxBalance>, CoinbaseIntxHttpError>
Returns all balances for a given portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliobalances.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_portfolio_balance(
&self,
portfolio_id: &str,
asset: &str,
) -> Result<CoinbaseIntxBalance, CoinbaseIntxHttpError>
pub async fn http_get_portfolio_balance( &self, portfolio_id: &str, asset: &str, ) -> Result<CoinbaseIntxBalance, CoinbaseIntxHttpError>
Retrieves the balance for a given portfolio and asset.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliobalance.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_portfolio_fills(
&self,
portfolio_id: &str,
params: GetPortfolioFillsParams,
) -> Result<CoinbaseIntxFillList, CoinbaseIntxHttpError>
pub async fn http_list_portfolio_fills( &self, portfolio_id: &str, params: GetPortfolioFillsParams, ) -> Result<CoinbaseIntxFillList, CoinbaseIntxHttpError>
Returns all fills for a given portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliofills.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_portfolio_positions(
&self,
portfolio_id: &str,
) -> Result<Vec<CoinbaseIntxPosition>, CoinbaseIntxHttpError>
pub async fn http_list_portfolio_positions( &self, portfolio_id: &str, ) -> Result<Vec<CoinbaseIntxPosition>, CoinbaseIntxHttpError>
Returns all positions for a given portfolio.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliopositions.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_portfolio_position(
&self,
portfolio_id: &str,
symbol: &str,
) -> Result<CoinbaseIntxPosition, CoinbaseIntxHttpError>
pub async fn http_get_portfolio_position( &self, portfolio_id: &str, symbol: &str, ) -> Result<CoinbaseIntxPosition, CoinbaseIntxHttpError>
Retrieves the position for a given portfolio and symbol.
See https://docs.cdp.coinbase.com/intx/reference/getportfolioposition.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_portfolio_fee_rates(
&self,
) -> Result<Vec<CoinbaseIntxPortfolioFeeRates>, CoinbaseIntxHttpError>
pub async fn http_list_portfolio_fee_rates( &self, ) -> Result<Vec<CoinbaseIntxPortfolioFeeRates>, CoinbaseIntxHttpError>
Retrieves the Perpetual Future and Spot fee rate tiers for the user.
See https://docs.cdp.coinbase.com/intx/reference/getportfoliosfeerates.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_create_order(
&self,
params: CreateOrderParams,
) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
pub async fn http_create_order( &self, params: CreateOrderParams, ) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
Create a new order.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_get_order(
&self,
venue_order_id: &str,
portfolio_id: &str,
) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
pub async fn http_get_order( &self, venue_order_id: &str, portfolio_id: &str, ) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
Retrieves a single order. The order retrieved can be either active or inactive.
See https://docs.cdp.coinbase.com/intx/reference/getorder.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_list_open_orders(
&self,
params: GetOrdersParams,
) -> Result<CoinbaseIntxOrderList, CoinbaseIntxHttpError>
pub async fn http_list_open_orders( &self, params: GetOrdersParams, ) -> Result<CoinbaseIntxOrderList, CoinbaseIntxHttpError>
Returns a list of active orders resting on the order book matching the requested criteria. Does not return any rejected, cancelled, or fully filled orders as they are not active.
See https://docs.cdp.coinbase.com/intx/reference/getorders.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_cancel_order(
&self,
client_order_id: &str,
portfolio_id: &str,
) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
pub async fn http_cancel_order( &self, client_order_id: &str, portfolio_id: &str, ) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
Cancels a single open order.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_cancel_orders(
&self,
params: CancelOrdersParams,
) -> Result<Vec<CoinbaseIntxOrder>, CoinbaseIntxHttpError>
pub async fn http_cancel_orders( &self, params: CancelOrdersParams, ) -> Result<Vec<CoinbaseIntxOrder>, CoinbaseIntxHttpError>
Cancel user orders.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Sourcepub async fn http_modify_order(
&self,
order_id: &str,
params: ModifyOrderParams,
) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
pub async fn http_modify_order( &self, order_id: &str, params: ModifyOrderParams, ) -> Result<CoinbaseIntxOrder, CoinbaseIntxHttpError>
Modify an open order.
See https://docs.cdp.coinbase.com/intx/reference/modifyorder.
§Errors
Returns an error if the HTTP request fails or the response cannot be parsed.
Trait Implementations§
Source§impl Clone for CoinbaseIntxHttpInnerClient
impl Clone for CoinbaseIntxHttpInnerClient
Source§fn clone(&self) -> CoinbaseIntxHttpInnerClient
fn clone(&self) -> CoinbaseIntxHttpInnerClient
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CoinbaseIntxHttpInnerClient
impl Debug for CoinbaseIntxHttpInnerClient
Auto Trait Implementations§
impl Freeze for CoinbaseIntxHttpInnerClient
impl !RefUnwindSafe for CoinbaseIntxHttpInnerClient
impl Send for CoinbaseIntxHttpInnerClient
impl Sync for CoinbaseIntxHttpInnerClient
impl Unpin for CoinbaseIntxHttpInnerClient
impl !UnwindSafe for CoinbaseIntxHttpInnerClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more