v4call — Server Verify Builder

Generate a signed .well-known/v4call-server.json proving that a Hive account controls this domain.
Signed client-side with your posting key via Hive Keychain (preferred) or manual paste — the key never hits the server.
What this does: produces a JSON file signed by your Hive posting key that declares “I, @hiveaccount, run v4call on this-domain.com”. Other federated v4call servers fetch this file to verify you — the signature ties your Hive identity to domain control. Upload the output to /public/.well-known/v4call-server.json on your server. One signing event per config change.
IDENTITY
The account whose posting key will sign. Typically your server's SERVER_HIVE_ACCOUNT.
The public hostname the v4call server is served from (no scheme, no trailing slash).
SERVER CONFIG
Hive account holding funds in flight. Must match your server's ESCROW_ACCOUNT, and its active key must live on this server.
Where platform fees land. Your SERVER_HIVE_ACCOUNT.
Where peer servers connect. Usually wss://<domain>/federation.
NOSTR — optional, baked into the signed proof
Including your server's Nostr identity here means a single fetch of v4call-server.json gives discoverers both the domain proof and the Nostr key claim — all signed by the same Hive posting key. Skip this card if you don't have a Nostr keypair for the server yet; the file remains valid without it. Use nostr-gen.html to generate one (browser-only, keys never leave your machine).
Bech32 form. Hex auto-fills below if you paste a valid npub.
Same key, different encoding. nGate / nostr-rs-relay pubkey_whitelist entries need this form.
RELAYS — up to 5 (any blank rows are skipped)
TIMING
Auto-filled with current time when you sign.
Auto-generated. regenerate
SIGN
PREFERRED · HIVE KEYCHAIN (key never leaves your browser)
Detecting Keychain…

FALLBACK · HIVE POSTING KEY PASTE
Only used locally for signing. Never sent anywhere. Stays in memory until you close this tab.
VERIFY (round-trip test)
Paste an existing v4call-server.json to test that its signature is valid. Useful to confirm your output before publishing.
OUTPUT — v4call-server.json unsigned
Upload target: /public/.well-known/v4call-server.json
Served at https://<your-domain>/.well-known/v4call-server.json. Rebuild / restart the container for the file to be baked into the Docker image (docker compose down && docker compose build --no-cache && docker compose up -d).
← back to v4call info