Skip to main content
POST
/
portfolio
/
wallet
Connect a wallet to your account and create a tracked portfolio
curl --request POST \
  --url https://openapiv1.coinstats.app/portfolio/wallet \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <api-key>' \
  --data '
{
  "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "connectionId": "ethereum",
  "name": "My Ethereum Wallet"
}
'
{
  "portfolioId": "a1b2c3d4e5f6...",
  "connectionId": "ethereum",
  "status": "connected"
}
40 credits per request
  • A portfolioId you can use to query portfolio data (value, coins, chart, transactions, defi, snapshot)
  • Automatic portfolio creation with visibility set to API
  • Background transaction sync initiated
  • address: Wallet address to connect
  • connectionId: Blockchain network identifier (e.g., “ethereum”). Use GET /wallet/blockchains for supported networks.
  • name: Custom display name for the portfolio

Authorizations

X-API-KEY
string
header
required

API key needed to access the endpoints. Example: 'demo-api-key'

Body

application/json
address
string
required

Wallet address to connect.

Example:

"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"

connectionId
string
required

Blockchain network identifier (e.g., "ethereum", "polygon"). Use GET /wallet/blockchains to get the list of supported blockchains.

Example:

"ethereum"

name
string

Optional display name for the portfolio.

Example:

"My Ethereum Wallet"

Response

Connect Wallet Portfolio

portfolioId
string
required

The unique identifier of the connected portfolio.

Example:

"a1b2c3d4e5f6..."

connectionId
string
required

The connectionId used to connect the portfolio.

Example:

"ethereum"

status
enum<string>
required

"connected" if a new portfolio was created, "existing" if the portfolio already exists.

Available options:
connected,
existing
Example:

"connected"