# Diginery > ## Connect An agent connects as a person's bot: the person opens one link, approves in Diginery with MFA and picks what the bot may do. 1. POST https://diginery.com/oauth2/register, JSON {"client_name": "YOUR NAME", "token_endpoint_auth_method": "none"} -> client_id. 2. POST https://diginery.com/oauth2/device_authorization, form client_id=CLIENT_ID&bot_name=YOUR_NAME&scope=tickets%3Aread (read tickets) -> send the reply's message (it holds the link) to the person in this reply. 3. Right after sending the link, in the same turn: run the reply's agent_next; while it answers authorization_pending, run it again -> access_token and refresh_token. Refresh before expires_in: https://diginery.com/llms/connect.txt. ## Read next - [screens](https://diginery.com/llms/screens.txt): 5 screens: their URLs and who may open them - [api](https://diginery.com/llms/api.txt): the records and endpoints an agent reaches over REST and MCP - [tickets](https://diginery.com/llms/tickets.txt): report a bug, a UX problem or a missing feature; search existing tickets first Machine contracts: OpenAPI https://diginery.com/openapi.json; domain model https://diginery.com/.well-known/app-spec.json.