supanovasupanovaDOCS
Open Launchpad
Launchpad documentation
wallet

Read the authenticated user’s wallet portfolio projection.

GET /api/v1/wallet/portfolio. Read the authenticated user’s wallet portfolio projection.

Request

GET /api/v1/wallet/portfolio

Authentication is required. Supported credentials: a customer API key with read scope in X-API-Key or a signed-in customer session token in Authorization: Bearer …. Send one credential type only; never both.

Parameters

NameInTypeRequiredConstraintsDescription
walletConnectionIdquerystringNoformat: uuid; pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$—
X-Service-Act-AsheaderstringNomin length: 3; max length: 512Service-principal path only (local and devnet stages; refused by configuration on mainnet). With an OAuth client-credentials bearer token from the validator, names the allow-listed Party the client acts as. Missing: 400 SERVICE_ACT_AS_REQUIRED; not allow-listed: 403 SERVICE_PARTY_NOT_ALLOWED. Ignored for customer session tokens.
X-Request-IdheaderstringNomin length: 8; max length: 128; pattern: ^[A-Za-z0-9._:-]+$Optional client correlation identifier. The server always generates a separate authoritative request ID and retains a valid supplied value only as secondary audit correlation metadata.

cURL

bash
curl --fail-with-body --silent --show-error \
  --request GET \
  --url "https://launch-api.supanova.app/api/v1/wallet/portfolio" \
  --header "X-API-Key: $SUPANOVA_API_KEY"

Responses

200

The owned wallet portfolio read model.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Type: object.

FieldTypeRequiredConstraintsDescription
asOfstringYes——
balancesarray of object · Schema 1Yes——
dataModestringYesallowed: "projected", "simulated"—
disclaimerstringYes——
networkIdstringYespattern: ^canton:[-_a-zA-Z0-9]{1,32}$—
partyIdstringYes——
walletConnectionIdstringYesformat: uuid; pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$—

Additional fields are not allowed.

400

The request is malformed or failed validation. Codes: VALIDATION_FAILED, AMBIGUOUS_CREDENTIALS, SERVICE_ACT_AS_REQUIRED.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

401

Credentials are missing, malformed, expired or revoked. Codes: AUTHENTICATION_REQUIRED, INVALID_AUTHORIZATION_HEADER, INVALID_ACCESS_TOKEN, SESSION_REVOKED, API_KEY_INVALID, API_KEY_REVOKED.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

403

The credential may not call this route. Owner routes accept only a customer API key: an internal master key answers API_KEY_ROUTE_NOT_ALLOWED. Codes: ACCOUNT_RESTRICTED, ANONYMOUS_ACCOUNT_NOT_ALLOWED, API_KEY_ROUTE_NOT_ALLOWED, SERVICE_PARTY_NOT_ALLOWED, SERVICE_PRINCIPAL_NOT_ALLOWED, SIGNUP_NOT_INVITED, API_KEY_IP_NOT_ALLOWED, PRODUCT_ACCOUNT_RESTRICTED.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

429

The caller exceeded an IP or principal request budget.

HeaderTypeDescription
Retry-AfterintegerWhole seconds to wait before retrying a rate-limited request.
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

503

A dependency is unavailable or the feature is not enabled on this deployment. Codes: AUTHENTICATION_UNAVAILABLE, AUTHORIZATION_UNAVAILABLE.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

default

Machine-readable API error. The HTTP status identifies the error class.

HeaderTypeDescription
X-Request-IdstringServer-generated request correlation identifier to retain for support and reconciliation.

Content type: application/json

Standard envelope: error.code, error.message, optional error.details, and requestId. See error handling and the full code registry.

Nested schemas

Field links above lead to the complete nested object, array, and variant definitions below. Required fields are scoped to their containing object.

Schema 1

Response 200.balances

Type: array of object.

Array items: object · Schema 2.

Schema 2

Response 200.balances item

Type: object.

FieldTypeRequiredConstraintsDescription
actionsobject · Schema 3Yes——
assetobject · Schema 4Yes——
availableAmountstringYespattern: ^(?:0|[1-9]\d{0,27})(?:\.\d{1,10})?$—
depositAccountobject · Schema 5No——
instrumentIdobject · Schema 6Yes——
lockedAmountstringYespattern: ^(?:0|[1-9]\d{0,27})(?:\.\d{1,10})?$—
namestringYes——
publicHolderHintsarray of string · Schema 7Nomax items: 4—
symbolstringYes——
totalAmountstringYespattern: ^(?:0|[1-9]\d{0,27})(?:\.\d{1,10})?$—

Additional fields are not allowed.

Schema 3

Response 200.balances item.actions

Type: object.

FieldTypeRequiredConstraintsDescription
swapBuyobject · Schema 8Yes——
swapSellobject · Schema 8Yes——
transferobject · Schema 8Yes——

Additional fields are not allowed.

Schema 4

Response 200.balances item.asset

Type: object.

FieldTypeRequiredConstraintsDescription
assetTypestringYesallowed: "native", "stablecoin", "utility", "governance", "security", "other"—
canonicalSlugstringYesmin length: 3; max length: 64; pattern: ^[a-z0-9][a-z0-9-]{1,62}[a-z0-9]$—
decimalsintegerYesminimum: 0; maximum: 18—
logoPathone or more variants · Schema 9Yes——
marketSlugone or more variants · Schema 10Yes——

Additional fields are not allowed.

Schema 5

Response 200.balances item.depositAccount

Type: object.

FieldTypeRequiredConstraintsDescription
frozenbooleanYes——
walletCcAmountone or more variants · Schema 11Yes——
walletCcUnavailableReasonone or more variants · Schema 12Yes——

Additional fields are not allowed.

Schema 6

Response 200.balances item.instrumentId

Type: object.

FieldTypeRequiredConstraintsDescription
adminstringYesmin length: 1; max length: 512—
idstringYesmin length: 1; max length: 512—

Additional fields are not allowed.

Schema 7

Response 200.balances item.publicHolderHints

Type: array of string.

max items: 4

Array items: string. pattern: ^holder_[0-9a-f]{24}$

Schema 8

Response 200.balances item.actions.swapBuy

Type: object.

FieldTypeRequiredConstraintsDescription
dataModestringYesallowed: "none", "projected", "simulated"—
reasonCodeone or more variants · Schema 13Yes——
statusstringYesallowed: "blocked", "disabled", "preview", "ready"—

Additional fields are not allowed.

Schema 9

Response 200.balances item.asset.logoPath

Type: one or more variants.

At least one of these variants must match:

  • Variant 1: string. min length: 1; max length: 512
  • Variant 2: null.

Schema 10

Response 200.balances item.asset.marketSlug

Type: one or more variants.

At least one of these variants must match:

  • Variant 1: string. min length: 3; max length: 64; pattern: ^[a-z0-9][a-z0-9-]{1,62}[a-z0-9]$
  • Variant 2: null.

Schema 11

Response 200.balances item.depositAccount.walletCcAmount

Type: one or more variants.

At least one of these variants must match:

  • Variant 1: string. pattern: ^(?:0|[1-9]\d{0,27})(?:\.\d{1,10})?$
  • Variant 2: null.

Schema 12

Response 200.balances item.depositAccount.walletCcUnavailableReason

Type: one or more variants.

At least one of these variants must match:

  • Variant 1: string. min length: 1; max length: 64
  • Variant 2: null.

Schema 13

Response 200.balances item.actions.swapBuy.reasonCode

Type: one or more variants.

At least one of these variants must match:

  • Variant 1: string. min length: 1; max length: 128
  • Variant 2: null.

Source contract

This page is generated from the checked-in customer OpenAPI snapshot. Download JSON, download YAML, or compare the live API reference. Snapshot provenance records the retrieval date and checksum.

Generated from the public API contractDeveloper settings