Skip to main content
GET
/
v1
/
accounts
/
{account_id}
/
portfolio
/
history
curl
curl -X GET "https://api.services.payward.com/v1/accounts/ABCD1234EFGH5678/portfolio/history" \
  -H "API-Key: $PWS_API_KEY" \
  -H "API-Nonce: $PWS_API_NONCE" \
  -H "API-Sign: $PWS_API_SIGN"
{
  "data": [
    {
      "timestamp": "2026-04-26T00:00:00Z",
      "assets": [
        {
          "symbol": "BTC",
          "type": "crypto",
          "amount": "0.50000000"
        },
        {
          "symbol": "ETH",
          "type": "crypto",
          "amount": "2.50000000"
        },
        {
          "symbol": "USD",
          "type": "fiat",
          "amount": "1000.00"
        }
      ],
      "value": "42775.42",
      "total_pnl": "4655.42"
    },
    {
      "timestamp": "2026-04-25T00:00:00Z",
      "assets": [
        {
          "symbol": "BTC",
          "type": "crypto",
          "amount": "0.50000000"
        },
        {
          "symbol": "ETH",
          "type": "crypto",
          "amount": "2.50000000"
        },
        {
          "symbol": "USD",
          "type": "fiat",
          "amount": "1000.00"
        }
      ],
      "value": "42390.18",
      "total_pnl": "4270.18"
    }
  ],
  "quote_symbol": "USD",
  "quote_type": "fiat",
  "start_timestamp": "2026-04-25T00:00:00Z",
  "end_timestamp": "2026-04-26T23:59:59Z"
}

Authorizations

API-Key
string
header
required

Your public API key. Identifies the partner making the request.

API-Nonce
string
header
required

Monotonically increasing nonce included in the request signature.

API-Sign
string
header
required

HMAC signature over the request, computed with your private key.

Path Parameters

account_id
string
required

ID of the account the request applies to. This refers to one of the accounts held by the user the request is acting on behalf of (typically the user's main account, but any of the user's accounts is accepted). Routes the request to that specific account container. Canonical identifier for an account in the Payward public API.

Required string length: 14 - 42

Query Parameters

assets
object[] | null

Filter historical balances by asset references. Each entry is an asset reference with symbol and type. Encode using indexed deep-object syntax, e.g. ?assets[0][symbol]=BTC&assets[0][type]=crypto&assets[1][symbol]=ETH&assets[1][type]=crypto.

start_timestamp
string<date-time>

Start of the time window (inclusive). Only results whose timestamp is greater than or equal to start_timestamp are returned.

end_timestamp
string<date-time>

End of the time window (exclusive). Only results whose timestamp is strictly less than end_timestamp are returned.

quote_symbol
string
default:USD

Ticker symbol of the fiat quote asset to use for all valuations and PnL calculations in the response (e.g. USD, EUR). Defaults to USD. Ticker symbol of an asset (e.g. BTC, USDC, EUR).

Required string length: 3 - 16
Example:

"BTC"

quote_type
enum<string>
default:fiat

Classification of the quote asset. Currently only fiat is supported.

Available options:
fiat

Response

Response

data
object[]
required

Time series data points for the queried window. A maximum of 365 data points is returned per request.

quote_symbol
string
required

The asset used as the quote currency for all values in data. Echoes the quote_symbol query parameter (or its default).

Maximum string length: 16
quote_type
enum<string>
required

Classification of the quote asset. Echoes the quote_type query parameter (or its default).

Available options:
fiat
start_timestamp
string<date-time>
required

Start of the time window covered by data. Echoes the start_timestamp query parameter (or its default).

end_timestamp
string<date-time>
required

End of the time window covered by data. Echoes the end_timestamp query parameter (or its default).