POST
/
v1
/
portfolio
/
create
/
signature
curl --request POST \
  --url '/v1/portfolio/create/signature' \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: your_api_key_here' \
  --data '{
    "userAddress": "0xYourWalletAddress",
    "chainIds": [8453],
    "accountIndex": 0
  }'
{
  "success": true,
  "data": {
    "userAddress": "0xYourWalletAddress",
    "chainIds": [8453],
    "accountIndex": 0,
    "kernelVersion": "0.3.2",
    "signatureAction": {
      "reason": "portfolio-permission",
      "type": "personal_sign",
      "message": "I authorize Glider to manage my portfolio\n\n0x8ad4d95c3c3d0a1e87bfdb1d2401905db4a97d8e05e77d69e5d79397da128b81"
    }
  },
  "correlationId": "corr_abc123",
  "requestId": "req_xyz789",
  "timestamp": "2023-05-21T12:34:56.789Z"
}

Generates a message that must be signed by the user’s wallet to create a portfolio.

userAddress
string
required

The Ethereum address of the user who will own the portfolio

chainIds
number[]
required

Array of chain IDs where the portfolio will operate (e.g., [8453] for Base)

accountIndex
number
default:"0"

The account index (useful for supporting multiple portfolios from same address)

curl --request POST \
  --url '/v1/portfolio/create/signature' \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: your_api_key_here' \
  --data '{
    "userAddress": "0xYourWalletAddress",
    "chainIds": [8453],
    "accountIndex": 0
  }'
{
  "success": true,
  "data": {
    "userAddress": "0xYourWalletAddress",
    "chainIds": [8453],
    "accountIndex": 0,
    "kernelVersion": "0.3.2",
    "signatureAction": {
      "reason": "portfolio-permission",
      "type": "personal_sign",
      "message": "I authorize Glider to manage my portfolio\n\n0x8ad4d95c3c3d0a1e87bfdb1d2401905db4a97d8e05e77d69e5d79397da128b81"
    }
  },
  "correlationId": "corr_abc123",
  "requestId": "req_xyz789",
  "timestamp": "2023-05-21T12:34:56.789Z"
}