agent-keys

Request Pairing

Public — the agent has no credential yet, which is the point of the flow.

The body is required now, because email is. It used to be defaulted, on the grounds that "a required body whose schema has no required property is unreachable over MCP — the generated tool truthfully marks every argument optional, the transport then sends no body at all, and FastAPI 422s on the missing one." That argument was about a body with nothing required in it; with a required email the generated tool marks it required, the transport sends it, and the 422 cannot arise.

Returns a bare verification URI — no code, no request id, no token — and it has always been bare, for the reason RFC 8628 §5.2 gives. The typed code that used to be the other half is gone; the address is what replaces it (see the module docstring).

Answers identically whether or not the address has an account. Same status, same body, same subsequent polling behaviour; a row is written either way and the mail decision is made after the response is computed, so the handler cannot be timed. Only an address that really has an account gets a notice: we do not mail strangers, and a public unauthenticated route that did would be an open mailer running on our relay.

post/agent-keys/requests

Request

  • Base URL: https://app.zeno-works.ch (the document declares no server; this is the origin it was published from)
  • URL: https://app.zeno-works.ch/agent-keys/requests
  • Auth: none declared

Request body

emailstring required
client_namestring

Response

Successful Response

claim_tokenstring required
verification_uristring required
expires_atstring date-time required
poll_interval_secondsinteger required

Changes

No recorded changes to this operation across all 1 revision of this API.