Expand description
CoinPayments API Client
A comprehensive Rust client library for the CoinPayments API that provides easy access to cryptocurrency payment processing, wallet management, transaction handling, and more.
§Features
- Currencies: Get supported currencies, rates, and conversion information
- Rates: Real-time exchange rates and market data
- Fees: Blockchain fee calculations and estimates
- Wallets: Create and manage wallets and addresses
- Transactions: Handle payments, withdrawals, and consolidations
- Invoices: Create and manage payment invoices
- Webhooks: Set up and manage webhook notifications
§Quick Start
use coinpayments::{CoinPaymentsClient, CreateInvoiceRequest};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = CoinPaymentsClient::new("your_client_id", "your_client_secret");
// Create an invoice
let request = CreateInvoiceRequest::new("10.00", "USD", "Payment for services")
.with_buyer("customer@example.com", Some("John Doe".to_string()));
let invoice = client.create_invoice(request).await?;
println!("Invoice created: {}", invoice.invoice.invoice_url);
Ok(())
}Re-exports§
pub use utils::build_query_string;pub use utils::calculate_pagination;pub use utils::convert_reqwest_error;pub use utils::create_auth_headers;pub use utils::create_http_client;pub use utils::extract_api_error_message;pub use utils::extract_rate_limit_info;pub use utils::format_amount;pub use utils::from_smallest_unit;pub use utils::generate_hmac_signature;pub use utils::generate_nonce;pub use utils::generate_random_string;pub use utils::generate_timestamp;pub use utils::is_valid_amount;pub use utils::is_valid_bitcoin_address;pub use utils::is_valid_currency_id;pub use utils::is_valid_email;pub use utils::is_valid_ethereum_address;pub use utils::is_valid_url;pub use utils::is_valid_wallet_label;pub use utils::iso8601_to_timestamp;pub use utils::parse_amount;pub use utils::timestamp_to_iso8601;pub use utils::to_smallest_unit;pub use utils::validate_webhook_signature;pub use utils::PaginationInfo as UtilsPaginationInfo;pub use utils::RateLimitInfo;pub use currencies::*;pub use fees::*;pub use invoices::*;pub use rates::*;pub use transactions::*;pub use wallets::*;pub use webhooks::*;
Modules§
- currencies
- Currency-related API endpoints for CoinPayments API
- fees
- Blockchain fees API endpoints for CoinPayments API
- invoices
- Invoice management API endpoints for CoinPayments API
- rates
- Exchange rates API endpoints for CoinPayments API
- transactions
- Transaction management API endpoints for CoinPayments API
- utils
- Utility functions and common helpers for CoinPayments API
- wallets
- Wallet management API endpoints for CoinPayments API
- webhooks
- Webhook management API endpoints for CoinPayments API
Structs§
- ApiError
- API error information
- ApiResponse
- Generic API response wrapper
- Client
Info - Client information
- Coin
Payments Client - CoinPayments API Client
- Pagination
Metadata - Pagination metadata
- Ping
Response - Ping response
- Rate
Limits - Rate limit information
Enums§
- Auth
Type - Authentication type
- Coin
Payments Error - API Error types
Type Aliases§
- Result
- Result type alias for CoinPayments operations