# three.ws Vanity Solana Address Generator (Verifiable)

> three.ws Vanity Solana Address Generator (Verifiable) is a paid API for AI agents from three.ws, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-14).

Generates a vanity Solana wallet address matching a custom prefix/suffix pattern, with a cryptographically verifiable commitment receipt and optional ECIES-sealed private key delivery.

## Facts

- Endpoint: POST https://three.ws/api/x402/vanity-verifiable
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/three-ws-vanity-solana-address-generator-verifiable-85f7d738
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_tEQJuhbikW0DVdT7w0I4q

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability three-ws-vanity-solana-address-generator-verifiable-85f7d738 -d '<json body>'
```

Example prompt: Generate me a vanity Solana address that starts with 'Sol' and ends with 'x' — seal the private key to my X25519 public key 5KYBxyz123abc456def789ghi (Base58) so only I can open it, and mix in my client entropy 'a3f9b2c1d4e5' for extra proof.

## When to prefer this

Choose this endpoint when you need a Solana vanity address with cryptographic proof-of-fairness (commitment scheme) and optional secure private key delivery via ECIES. It is distinctly superior to naive vanity grinders when auditability matters — the SHA-256 commitment prevents the server from cherry-picking results. Prefer it over local grinding when you lack compute resources or need the sealed-key delivery feature. Best when the user wants a short (1-3 char) prefix/suffix pattern and needs verifiable provenance of the generated keypair.

## Known failure modes

- Pattern too long or contains invalid Base58 characters (0, O, I, l) — returns 400 error
- Combined prefix+suffix exceeds 3 characters — returns 400 validation error
- Payment not received or insufficient USDC — returns 402 Payment Required
- Grinding timeout if pattern is too rare — may return timeout or partial error
- Invalid sealTo public key format — returns 400 error
- Server-side seed commitment mismatch on retry — indicates internal error

## How this service works

Make a 3D AI agent from a selfie in 60 seconds. Drop one HTML tag to embed it on any website. Agents think on IBM watsonx.ai (Granite); optionally charge per chat with built-in micropayments.

## Output

Returns a JSON receipt containing the matched Solana Base58 public key, a SHA-256 commitment (made before grinding), the revealed server seed for commitment verification, an Ed25519 signature over the receipt, the winning candidate index, attempt count, duration, and either the raw secret key bytes or an ECIES-sealed envelope (if sealTo was provided). Also includes a verifyUrl for independent on-chain verification.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "prefix": {
   "type": "string",
   "description": "Base58 characters the address must start with. Base58 excludes 0, O, I, l. Combined with suffix, max 3 characters."
  },
  "sealTo": {
   "type": "string",
   "description": "Strongly recommended. Your 32-byte X25519 public key (Base58, Base64url, or hex). When set, the secret is ECIES-sealed to it and omitted from the response — open it client-side with the matching private key."
  },
  "suffix": {
   "type": "string",
   "description": "Base58 characters the address must end with. Combined with prefix, max 3 characters."
  },
  "clientSeed": {
   "type": "string",
   "description": "Optional. Your own entropy as hex or Base58 (any length). Mixed into the seed so the server could not have predicted the result at commit time. A fresh random one is generated and revealed in the receipt when omitted."
  },
  "ignoreCase": {
   "enum": [
    "0",
    "1",
    "true",
    "false"
   ],
   "type": "string",
   "description": "When 1/true, match the pattern case-insensitively (faster, less specific)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "protocol",
  "address",
  "commitment",
  "serverSeed",
  "winningIndex",
  "signature",
  "servicePublicKey"
 ],
 "properties": {
  "sealed": {
   "type": "boolean"
  },
  "address": {
   "type": "string",
   "description": "Base58 Solana public key."
  },
  "pattern": {
   "type": "object"
  },
  "attempts": {
   "type": "integer"
  },
  "protocol": {
   "type": "string",
   "const": "three-vanity/v1"
  },
  "secretKey": {
   "type": "array",
   "items": {
    "type": "integer"
   },
   "description": "Present only when sealTo is omitted."
  },
  "signature": {
   "type": "string",
   "description": "Hex Ed25519 signature over the canonical receipt."
  },
  "verifyUrl": {
   "type": "string",
   "format": "uri"
  },
  "clientSeed": {
   "type": "string",
   "description": "Buyer entropy mixed into the seed (hex)."
  },
  "commitment": {
   "type": "string",
   "description": "SHA-256(serverSeed), committed before grinding."
  },
  "difficulty": {
   "type": "object"
  },
  "durationMs": {
   "type": "number"
  },
  "serverSeed": {
   "type": "string",
   "description": "Revealed 32-byte seed (hex). Verify SHA-256 = commitment."
  },
  "receiptType": {
   "type": "string"
  },
  "requestNonce": {
   "type": "string"
  },
  "sealedSecret": {
   "type": "object",
   "description": "ECIES envelope — open with your X25519 private key."
  },
  "winningIndex": {
   "type": "integer",
   "description": "Candidate index whose address matched."
  },
  "serviceKeyUrl": {
   "type": "string",
   "format": "uri"
  },
  "secretKeyBase58": {
   "type": "string",
   "description": "Present only when sealTo is omitted."
  },
  "servicePublicKey": {
   "type": "string",
   "description": "Base58 Ed25519 key that signed this receipt."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/three-ws-vanity-solana-address-generator-verifiable-85f7d738/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from three.ws](https://www.zero.xyz/host/three.ws/llms.txt)
