Skip to main content
PATCH
/
internal-accounts
/
{id}
cURL
curl --request PATCH \
  --url https://api.lightspark.com/grid/2025-10-13/internal-accounts/{id} \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "privateEnabled": true
}
'
{
  "id": "InternalAccount:019542f5-b3e7-1d02-0000-000000000002",
  "customerId": "Customer:019542f5-b3e7-1d02-0000-000000000001",
  "type": "EMBEDDED_WALLET",
  "balance": {
    "amount": 12550,
    "currency": {
      "code": "USD",
      "name": "United States Dollar",
      "symbol": "$",
      "decimals": 2
    }
  },
  "fundingPaymentInstructions": [],
  "privateEnabled": true,
  "createdAt": "2026-04-08T15:30:00Z",
  "updatedAt": "2026-04-08T15:35:02Z"
}

Documentation Index

Fetch the complete documentation index at: https://grid.lightspark.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API token authentication using format <api token id>:<api client secret>

Headers

Grid-Wallet-Signature
string

Full API-key stamp built over the prior payloadToSign with the session API keypair of a verified authentication credential on the target internal account. Required on the signed retry; ignored on the initial call.

Request-Id
string

The requestId returned in a prior 202 response, echoed back on the signed retry so the server can correlate it with the issued challenge. Required on the signed retry; must be paired with Grid-Wallet-Signature.

Path Parameters

id
string
required

The id of the internal account to update.

Body

application/json

Partial request body for PATCH /internal-accounts/{id}. At least one update field must be provided. On step 1 of the signed-retry flow Grid binds the submitted update fields into payloadToSign; on step 2 the client echoes the same fields back and Grid applies the update to the internal account.

privateEnabled
boolean

Whether wallet privacy should be enabled for the Embedded Wallet.

Example:

true

Response

Signed retry accepted. Returns the updated internal account.

id
string
required

The ID of the internal account

Example:

"InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123"

type
enum<string>
required

Classification of an internal account.

  • INTERNAL_FIAT: A Grid-managed fiat holding account (for example, the USD holding account used as the source for Payouts flows).
  • INTERNAL_CRYPTO: A Grid-managed crypto holding account denominated in a stablecoin such as USDC.
  • EMBEDDED_WALLET: A self-custodial Embedded Wallet provisioned for the customer. Outbound transfers require a session signature produced by the customer's device — see the Embedded Wallets guide.
Available options:
INTERNAL_FIAT,
INTERNAL_CRYPTO,
EMBEDDED_WALLET
balance
object
required
fundingPaymentInstructions
object[]
required

Payment instructions for funding the account

createdAt
string<date-time>
required

Timestamp when the internal account was created

Example:

"2025-10-03T12:30:00Z"

updatedAt
string<date-time>
required

Timestamp when the internal account was last updated

Example:

"2025-10-03T12:30:00Z"

customerId
string

The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform.

Example:

"Customer:019542f5-b3e7-1d02-0000-000000000001"

privateEnabled
boolean

Whether wallet privacy is enabled for the Embedded Wallet. Only present for EMBEDDED_WALLET internal accounts.

Example:

true