{"endpoint":"/api/demo/verify","method":"POST","description":"Agent-to-Service verification demo. A service verifies that the calling agent is registered and backed by a real human. Returns the agent's on-chain identity and credentials.","authentication":{"required":true,"protocol":"Self Agent ID signed headers","requiredHeaders":{"x-self-agent-signature":"HMAC signature of the request","x-self-agent-timestamp":"ISO 8601 timestamp of the request"},"optionalHeaders":{"x-self-agent-keytype":"Key type: 'ed25519' or omit for ECDSA","x-self-agent-key":"Agent public key (required for Ed25519)"},"howToSign":"Use agent.fetch() from @selfxyz/agent-sdk, or manually sign with agent.signRequest() and attach headers."},"bodySchema":{"?network":"Query param: 'celo-sepolia' (default) or 'celo-mainnet'"},"exampleBody":{"message":"Hello from my agent"},"notes":["This is the simplest demo — verifies your agent's identity and returns credentials.","Replay protection is enabled: each signature can only be used once."],"sdkExample":"const res = await agent.fetch(\"https://app.ai.self.xyz/api/demo/verify?network=celo-sepolia\", { method: \"POST\", headers: { \"Content-Type\": \"application/json\" }, body: JSON.stringify({}) });"}