Skip to main content

Introduction to CDP SDK

The Coinbase Developer Platform (CDP) SDK is a comprehensive set of client libraries that enables developers to programmatically create, manage, and use crypto wallets while relying on CDP to secure private keys.

What is CDP SDK?

CDP SDK provides a unified interface for interacting with the Coinbase Developer Platform, allowing you to build applications that:
  • Create and manage wallets - Server-managed accounts where CDP secures private keys
  • Send transactions - Execute blockchain transactions on supported networks
  • Transfer tokens - Easily move crypto assets between accounts
  • Swap tokens - Exchange tokens directly within your application
  • Govern permissions - Use policy engines to control transaction permissions
  • Manage end users - Handle authentication and user account management

Key Features

  • Multi-chain support for EVM and Solana blockchains
  • Server-managed and smart account types
  • Built-in authentication with JWT-based security
  • Policy engine for operation controls
  • Account abstraction (ERC-4337) support
  • Compatible with popular Web3 libraries (Viem, Web3.py)

Supported Blockchains

CDP SDK provides full support for multiple blockchain ecosystems:

EVM Chains

  • Ethereum Mainnet & Sepolia
  • Base Mainnet & Sepolia
  • Polygon
  • Arbitrum
  • Optimism
  • And other EVM-compatible networks

Solana

  • Solana Mainnet
  • Solana Devnet
  • Full transaction support
  • Token transfers

Available Languages

CDP SDK has full-featured client libraries for multiple programming languages:

TypeScript

Full TypeScript/JavaScript support with async/await, compatible with Viem

Python

Async Python SDK with Web3.py compatibility

Go

Go SDK with idiomatic Go patterns

Rust

Type-safe Rust implementation with Tokio async runtime

Account Types

CDP SDK supports multiple account types to fit your application’s needs:

EVM Accounts

  • Server Accounts (EOA) - Externally Owned Accounts where CDP manages the private keys
  • Smart Accounts - Account abstraction (ERC-4337) accounts with gasless transactions and advanced features
  • EIP-7702 Delegated Accounts - Upgrade existing EOAs with smart account capabilities

Solana Accounts

  • Server Accounts - CDP-managed Solana accounts for secure key management

Architecture

The SDK is organized by blockchain type with a simple, intuitive API:
TypeScript
import { CdpClient } from "@coinbase/cdp-sdk";

const cdp = new CdpClient();

// EVM operations
await cdp.evm.createAccount();

// Solana operations
await cdp.solana.createAccount();

// Policy management
await cdp.policies.createPolicy();

// End user management
await cdp.endUser.createEndUser();
Python
from cdp import CdpClient

async with CdpClient() as cdp:
    # EVM operations
    await cdp.evm.create_account()
    
    # Solana operations
    await cdp.solana.create_account()
    
    # Policy management
    await cdp.policies.create_policy()
    
    # End user management
    await cdp.end_user.create_end_user()

Core Capabilities

Account Management

Create, import, export, and manage blockchain accounts across EVM and Solana

Transaction Signing

Server-side transaction signing with CDP-managed private keys

Token Operations

Transfer tokens, execute swaps, and manage token balances

Policy Engine

Create allowlists, denylists, and custom rules to govern operations

Smart Accounts

Account abstraction with gasless transactions and batch operations

Authentication

JWT-based authentication for secure API access

Security First

CDP SDK is built with security as a priority:
  • Server-managed keys - Private keys are secured by Coinbase infrastructure
  • JWT authentication - Industry-standard token-based authentication
  • Wallet secrets - Additional authentication layer for write operations
  • Policy controls - Enforce transaction rules at the account or project level

Next Steps

Installation

Install CDP SDK for your preferred language

Quickstart

Build your first application with CDP SDK

Authentication

Learn how to set up API keys and authenticate

API Reference

Explore the complete API documentation

Build docs developers (and LLMs) love