{
  "description": "Reference vectors for p2p-mes request signing (the X-Sig header). For each vector: build the canonical string from `request` + `x_ts` + `x_node`, Keccak-256 it to get `message_hash_keccak256`, then produce a recoverable ECDSA signature over that hash with `signer.private_key` (v in {27,28}) to get `x_sig`; its recovered address equals `signer.address`. See docs/CLIENT_GUIDE.md.",
  "signature_version": "p2p-mes-v1",
  "signer": {
    "private_key": "0x1111111111111111111111111111111111111111111111111111111111111111",
    "note": "TEST KEY ONLY -- never use for a real identity",
    "address": "0x19e7e376e7c213b7e7e7e46cc70a5dd086daff2a"
  },
  "vectors": [
    {
      "name": "GET /conversations",
      "request": {
        "method": "GET",
        "path": "/conversations",
        "query": "limit=50",
        "body": "",
        "content_type": null
      },
      "x_ts": "1700000000000",
      "x_node": "12D3KooWExampleNodePeerId",
      "canonical_string": "p2p-mes-v1\nMETHOD:GET\nPATH:/conversations\nQUERY:limit=50\nBODY:\nTS:1700000000000\nNODE:12D3KooWExampleNodePeerId",
      "message_hash_keccak256": "0x02009b2cb9f6abb9685262b0b6e2643ad5c762ee1d10fa1f664b08e3062287d9",
      "x_sig": "0x9f98622969840f7cd7f3758dd08d7f984096af6ea3aa39c5316b121baf717d73551b63fafc2e051c2286207de866a6e6f699cee7fbd883613c56f72f891cfd6b1b",
      "headers": {
        "X-Node": "12D3KooWExampleNodePeerId",
        "X-Sig": "0x9f98622969840f7cd7f3758dd08d7f984096af6ea3aa39c5316b121baf717d73551b63fafc2e051c2286207de866a6e6f699cee7fbd883613c56f72f891cfd6b1b",
        "X-Sig-Version": "p2p-mes-v1",
        "X-Ts": "1700000000000",
        "X-User": "0x19e7e376e7c213b7e7e7e46cc70a5dd086daff2a"
      }
    },
    {
      "name": "POST /dialogs/{peer}/messages",
      "request": {
        "method": "POST",
        "path": "/dialogs/0xabcdef1234567890abcdef1234567890abcdef12/messages",
        "query": null,
        "body": "{\"text\":\"Hello, world!\"}",
        "content_type": "application/json"
      },
      "x_ts": "1700000000000",
      "x_node": "12D3KooWExampleNodePeerId",
      "canonical_string": "p2p-mes-v1\nMETHOD:POST\nPATH:/dialogs/0xabcdef1234567890abcdef1234567890abcdef12/messages\nQUERY:\nBODY:text=Hello%2C%20world%21\nTS:1700000000000\nNODE:12D3KooWExampleNodePeerId",
      "message_hash_keccak256": "0x663e0ae0c01409f8c7b8586ef3d5782d1a32c44b02f66c7cebd6c29a61630281",
      "x_sig": "0xad214c7aec1ae706b35e050694dd5058827000ac6b6427ca358cf81630679e914c504e728e24c3c19c65bc666d656d8cf5ee596f9bcb0dcc8d061e976d16318a1c",
      "headers": {
        "X-Node": "12D3KooWExampleNodePeerId",
        "X-Sig": "0xad214c7aec1ae706b35e050694dd5058827000ac6b6427ca358cf81630679e914c504e728e24c3c19c65bc666d656d8cf5ee596f9bcb0dcc8d061e976d16318a1c",
        "X-Sig-Version": "p2p-mes-v1",
        "X-Ts": "1700000000000",
        "X-User": "0x19e7e376e7c213b7e7e7e46cc70a5dd086daff2a"
      }
    }
  ]
}
