com.fedproxy.temp.xrpc.getRegistrationNonce

Request a one-time registration nonce from the relay before subscribing. The caller presents its did:key and badge.blue attestations (network.attested.signature) over its own key material; the relay replies with a crypto-secure random nonce and its own attestations over that nonce. The subscriber then signs the returned nonce and presents the resulting com.fedproxy.temp.xrpc.registration record as the parameter to com.fedproxy.temp.xrpc.subscribe, proving liveness and key custody and binding the WebSocket session to the key.

Details · procedure
Kindprocedure
Authorityxrpc.temp.fedproxy.com
Indexed
cid bafyreigztihdb2yg45vqjoyzleesf7g5o2emveehyo62xnifjyng3nz2ai

Checks

Valid
  • unlimited-string defs.main.input.schema.properties.keyNo maxLength, maxGraphemes or format limits this string.
  • unlimited-bytes defs.main.output.schema.properties.nonceNo maxLength limits these bytes.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Request a one-time registration nonce from the relay before subscribing. The caller presents its did:key and badge.blue attestations (network.attested.signature) over its own key material; the relay replies with a crypto-secure random nonce and its own attestations over that nonce. The subscriber then signs the returned nonce and presents the resulting com.fedproxy.temp.xrpc.registration record as the parameter to com.fedproxy.temp.xrpc.subscribe, proving liveness and key custody and binding the WebSocket session to the key.",
      "errors": [
        {
          "description": "Malformed body, missing fields, or unverifiable caller signatures.",
          "name": "InvalidRequest"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "key": {
              "description": "did:key public-key reference the caller will use to sign the returned nonce.",
              "type": "string"
            },
            "signatures": {
              "description": "badge.blue attestations (network.attested.signature) presented by the caller over its key material.",
              "ref": "network.attested.signature#signatures",
              "type": "ref"
            }
          },
          "required": [
            "key",
            "signatures"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "nonce": {
              "description": "Crypto-secure random nonce, 64 bytes, that the caller must sign to complete registration.",
              "type": "bytes"
            },
            "signatures": {
              "description": "badge.blue attestations (network.attested.signature) from the relay over the issued nonce.",
              "ref": "network.attested.signature#signatures",
              "type": "ref"
            }
          },
          "required": [
            "nonce",
            "signatures"
          ],
          "type": "object"
        }
      },
      "type": "procedure"
    }
  },
  "id": "com.fedproxy.temp.xrpc.getRegistrationNonce",
  "lexicon": 1
}