{"openapi":"3.1.0","info":{"title":"Auth Your Agent Cloud (slice)","version":"0.1.0"},"paths":{"/api/logout":{"post":{"summary":"Logout","operationId":"logout_api_logout_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/me":{"get":{"summary":"Me","operationId":"me_api_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"patch":{"summary":"Patch Me","operationId":"patch_me_api_me_patch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/users":{"post":{"summary":"Create User","operationId":"create_user_api_users_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/login":{"post":{"summary":"Login","operationId":"login_api_login_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/oauth/{provider}/start":{"get":{"summary":"Oauth Start","operationId":"oauth_start_api_oauth__provider__start_get","parameters":[{"name":"provider","in":"path","required":true,"schema":{"type":"string","title":"Provider"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/txn/{txn_id}/oauth/{provider}":{"post":{"summary":"Txn Oauth Start","description":"Approve a pending request by signing in again with a linked\nGoogle/Microsoft account (no passkey needed). The provider is asked for\na FRESH sign-in; the callback approves only if the identity it returns\nis linked to the request's owner. The state is bound server-side to\n(user, txn, provider), so the callback works even when it lands in a\ndifferent browser (the Android app opens providers externally).","operationId":"txn_oauth_start_api_txn__txn_id__oauth__provider__post","parameters":[{"name":"txn_id","in":"path","required":true,"schema":{"type":"string","title":"Txn Id"}},{"name":"provider","in":"path","required":true,"schema":{"type":"string","title":"Provider"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApproveLimitsIn"},{"type":"null"}],"title":"Lim"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/oauth/{provider}/callback":{"get":{"summary":"Oauth Callback","operationId":"oauth_callback_api_oauth__provider__callback_get","parameters":[{"name":"provider","in":"path","required":true,"schema":{"type":"string","title":"Provider"}},{"name":"code","in":"query","required":false,"schema":{"type":"string","default":"","title":"Code"}},{"name":"state","in":"query","required":false,"schema":{"type":"string","default":"","title":"State"}},{"name":"error","in":"query","required":false,"schema":{"type":"string","default":"","title":"Error"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/oauth/providers":{"get":{"summary":"Oauth Providers","operationId":"oauth_providers_api_oauth_providers_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/phone/send":{"post":{"summary":"Phone Send","operationId":"phone_send_api_phone_send_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PhoneSendIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/phone/verify":{"post":{"summary":"Phone Verify","operationId":"phone_verify_api_phone_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PhoneVerifyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/phone":{"delete":{"summary":"Phone Clear","description":"Unlink the phone (e.g. before re-verifying a different number).","operationId":"phone_clear_api_phone_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/push/keys":{"get":{"summary":"Push Keys","operationId":"push_keys_api_push_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/push/test":{"post":{"summary":"Push Test","description":"Push a test notification to the caller (self-service check that the\nphone's subscription actually receives + decrypts a VAPID push).","operationId":"push_test_api_push_test_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/sw/{kind}":{"post":{"summary":"Sw Report","operationId":"sw_report_api_sw__kind__post","parameters":[{"name":"kind","in":"path","required":true,"schema":{"type":"string","title":"Kind"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/push":{"post":{"summary":"Push Sub","description":"Register this browser's push subscription. Several devices per user\nare kept (multi-device approvals); the same endpoint is upserted.","operationId":"push_sub_api_push_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PushIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/push/unsub":{"post":{"summary":"Push Unsub","description":"Drop a push subscription: {endpoint} removes that device only; an\nempty body removes all of this user's web-push subscriptions (wipe).","operationId":"push_unsub_api_push_unsub_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/fcm":{"post":{"summary":"Fcm Register","description":"v20: the Android app reports its FCM registration token. Kept so the\ncloud can fire native push (PushService) when an approval is pending.\nA token is a capability: it is only ever used to send notifications to\nTHIS user's device via FCM's own auth.","operationId":"fcm_register_api_fcm_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FcmIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webauthn/register/options":{"get":{"summary":"Wa Reg Options","operationId":"wa_reg_options_api_webauthn_register_options_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/webauthn/register/verify":{"post":{"summary":"Wa Reg Verify","operationId":"wa_reg_verify_api_webauthn_register_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Body"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webauthn/login/options":{"get":{"summary":"Sso Login Options","description":"Begin passwordless sign-in: the user identifies by email, then\nauthenticates with a passkey on any of their devices.","operationId":"sso_login_options_api_webauthn_login_options_get","parameters":[{"name":"email","in":"query","required":true,"schema":{"type":"string","title":"Email"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/webauthn/login/verify":{"post":{"summary":"Sso Login Verify","operationId":"sso_login_verify_api_webauthn_login_verify_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Body"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/txn/{txn_id}/assertion-options":{"get":{"summary":"Txn Assertion Options","operationId":"txn_assertion_options_api_txn__txn_id__assertion_options_get","parameters":[{"name":"txn_id","in":"path","required":true,"schema":{"type":"string","title":"Txn Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/txn/{txn_id}/response":{"post":{"summary":"Txn Response","operationId":"txn_response_api_txn__txn_id__response_post","parameters":[{"name":"txn_id","in":"path","required":true,"schema":{"type":"string","title":"Txn Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TxAck"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents":{"post":{"summary":"Create Agent","operationId":"create_agent_api_agents_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/grants/{grant_id}/revoke":{"post":{"summary":"Revoke Grant","operationId":"revoke_grant_api_grants__grant_id__revoke_post","parameters":[{"name":"grant_id","in":"path","required":true,"schema":{"type":"string","title":"Grant Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}":{"delete":{"summary":"Delete Agent","operationId":"delete_agent_api_agents__agent_id__delete","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/user-info/fields":{"get":{"summary":"User Info Fields","description":"The registry of user-info fields a site may request. The PWA shows\nthese as the consent UI's vocabulary.","operationId":"user_info_fields_api_user_info_fields_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/grants/{grant_id}/user-info":{"patch":{"summary":"Grant User Info","description":"Narrow (or clear) the user-info fields a site sees, after the fact.\nOnly the grant OWNER may do this. The change takes effect with the NEXT\ntoken the site receives — in-flight tokens keep their snapshot until\ntheir short TTL (the standard bound, same as revocation). Widening is\nNOT allowed here: a new field needs a fresh phone approval (the consent\nfor a new disclosure cannot be given in a settings panel).","operationId":"grant_user_info_api_grants__grant_id__user_info_patch","parameters":[{"name":"grant_id","in":"path","required":true,"schema":{"type":"string","title":"Grant Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GrantUserInfoIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/revocation":{"get":{"summary":"Revocation Snapshot","description":"Signed, self-contained snapshot of agent revocation state for sites\nthat verify Auth Your Agent tokens locally (§9.2 hot-path-off-cloud).\n\nA site fetches this on a 60s-ish interval and caches it. On token\nverification, if the token's rev_seq is present in this snapshot the\nsite rejects without calling the cloud. The snapshot is signed with the\nsame key as the access tokens (see /api/v1/jwks), so it is not forgeable.\n\n`revoked_agents` is the union of agents with a non-ok global flag or a\ntombstone, plus the sites whose grant was revoked, tagged with the\n`rev_seq` they were revoked at (so an in-flight token issued before the\nrevocation is still honored for its TTL — the standard §10.3 bound).","operationId":"revocation_snapshot_api_v1_revocation_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/stepup/verify":{"post":{"summary":"Stepup Verify","description":"Single-use step-up token check, for sites that verify Auth Your Agent tokens\nlocally (§9.2). Consumes the token: valid once, invalid after. The\naccess-token + DPoP checks are already done locally by the site; this\nonly confirms the phone-approved, one-time step-up grant.","operationId":"stepup_verify_api_v1_stepup_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StepupVerifyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/flag":{"post":{"summary":"Agent Flag","operationId":"agent_flag_api_agents__agent_id__flag_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authz-requests":{"post":{"summary":"New Authz Request","operationId":"new_authz_request_api_v1_authz_requests_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentReqIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/stepup":{"post":{"summary":"New Stepup","operationId":"new_stepup_api_v1_stepup_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StepupIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agent-approval":{"post":{"summary":"New Agent Approval","description":"Agent-initiated approval request. Does NOT require a site grant.\nUsed by agents using Take over (sites that have not adopted Auth Your Agent)\nto get the owner's approval before performing a sensitive action.\nThe owner's approval mode (cloud/modes.py, rules only) may approve it\nwithout asking; that is recorded in Activity with the reason.","operationId":"new_agent_approval_api_v1_agent_approval_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StepupIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/plans":{"post":{"summary":"Submit Plan","description":"An agent submits a scheduled task's plan; the owner gets one card to\npre-approve it (all steps or some). Rules only: at run time an approval\nrequest goes through without a card only if it matches a pre-approved\nstep exactly (cloud/plans.py).","operationId":"submit_plan_api_v1_plans_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/plans/{plan_id}/status":{"post":{"summary":"Plan Status Agent","description":"The plan as the agent sees it: each step pre-approved or asking at the\ntime, and what has happened (a POST so the agent's token stays out of URLs).","operationId":"plan_status_agent_api_v1_plans__plan_id__status_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentOnlyIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/plans/result":{"post":{"summary":"Plan Step Result","description":"The vault reports what an approved plan step's click did, so steps\nchained to it know whether they may run.","operationId":"plan_step_result_api_v1_plans_result_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanResultIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/plans":{"get":{"summary":"List Plans","operationId":"list_plans_api_plans_get","parameters":[{"name":"agent_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/plans/{plan_id}/withdraw":{"post":{"summary":"Withdraw Plan","operationId":"withdraw_plan_api_plans__plan_id__withdraw_post","parameters":[{"name":"plan_id","in":"path","required":true,"schema":{"type":"string","title":"Plan Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agent-status":{"post":{"summary":"Report Agent Status","description":"Agent reports its current status so the owner's dashboard shows what\nit is doing. Authenticated with the agent's JWT.","operationId":"report_agent_status_api_v1_agent_status_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentStatusReport"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"Get Agent Status","description":"Agent checks whether it is still authorized. Authenticated via\nX-Agent-JWT header. Returns global_flag and revoked sites.","operationId":"get_agent_status_api_v1_agent_status_get","parameters":[{"name":"agent_id","in":"query","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agent-notify":{"post":{"summary":"Agent Notify","description":"A one-way note to the owner's phone: \"done\", \"stuck\", or the vault's\nend-of-session summary. Nothing to approve; it is recorded in Activity.","operationId":"agent_notify_api_v1_agent_notify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentNoteIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/approval-modes":{"get":{"summary":"Get Approval Modes","operationId":"get_approval_modes_api_agents__agent_id__approval_modes_get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Set Approval Mode","description":"Only the owner, signed in to the app, can change a mode: an agent has\nno way to call this (agent JWTs are not accepted here).","operationId":"set_approval_mode_api_agents__agent_id__approval_modes_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApprovalModeIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications":{"get":{"summary":"List Notifications","description":"The owner's notification history, newest first (30 days).","operationId":"list_notifications_api_notifications_get","parameters":[{"name":"before","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Before"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":30,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notifications/read":{"post":{"summary":"Read Notifications","description":"Mark the owner's notifications read: all, the listed ids, or those\nabout the listed approval requests / take overs (refs: the page a tapped\nnotification opened).","operationId":"read_notifications_api_notifications_read_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/settings/notifications":{"post":{"summary":"Set Notify Settings","operationId":"set_notify_settings_api_settings_notifications_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotifySettingsIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/authz-requests/{txn_id}":{"get":{"summary":"Poll Authz","operationId":"poll_authz_api_v1_authz_requests__txn_id__get","parameters":[{"name":"txn_id","in":"path","required":true,"schema":{"type":"string","title":"Txn Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/token":{"post":{"summary":"Get Token","operationId":"get_token_api_v1_token_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TokenIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/jwks":{"get":{"summary":"Jwks","operationId":"jwks_api_v1_jwks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/admin/keys/rotate":{"post":{"summary":"Rotate Jwt Key Route","description":"§10.6: rotate the signing key. The OLD kid stays in the keyset\n(grace-retained, still published in /jwks, still verifiable) until its\ngrace window passes; new tokens are signed with the NEW kid. A site\nrefreshing JWKS from the cloud keeps verifying BOTH, so rotation is\nzero-downtime. Admin-only (owner session, role='admin').","operationId":"rotate_jwt_key_route_api_admin_keys_rotate_post","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/verify":{"post":{"summary":"Site Verify","operationId":"site_verify_api_v1_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agents/{agent_id}/status":{"get":{"summary":"Agent Status","operationId":"agent_status_api_v1_agents__agent_id__status_get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/activity":{"get":{"summary":"Activity","description":"The user's full audit trail, newest first, paged by seq.","operationId":"activity_api_activity_get","parameters":[{"name":"before","in":"query","required":false,"schema":{"type":"integer","default":0,"title":"Before"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"agent","in":"query","required":false,"schema":{"type":"string","default":"","title":"Agent"}},{"name":"site","in":"query","required":false,"schema":{"type":"string","default":"","title":"Site"}},{"name":"action","in":"query","required":false,"schema":{"type":"string","default":"","title":"Action"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/export":{"get":{"summary":"Export Data","description":"Everything Auth Your Agent holds about the caller (data-subject access), as a\nJSON download.","operationId":"export_data_api_export_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/account/delete":{"post":{"summary":"Delete Account","description":"Erase the account. Every agent is revoked everywhere (revocation\nadvances), credentials/devices/sessions are deleted, the profile is\nblanked and the audit trail is anonymised (IPs and free-text detail\ndropped; the bare event sequence is kept so sites' revocation history\nstays consistent).","operationId":"delete_account_api_account_delete_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/recovery/codes":{"post":{"summary":"Recovery Codes New","description":"(Re)generate the one-time recovery codes. Old ones stop working.\nThe plaintext is returned exactly once.","operationId":"recovery_codes_new_api_recovery_codes_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/recovery/start":{"post":{"summary":"Recovery Start","description":"Send an SMS code to the account's VERIFIED phone. The answer is the\nsame whether or not the account/phone matched (no enumeration).","operationId":"recovery_start_api_recovery_start_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoverStartIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/recovery/complete":{"post":{"summary":"Recovery Complete","operationId":"recovery_complete_api_recovery_complete_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecoverCompleteIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/reports":{"post":{"summary":"Site Report","operationId":"site_report_api_v1_reports_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/takeover/report":{"post":{"summary":"Takeover Report","description":"Agent reports a site where takeover did not work correctly.\nAuthenticated via agent JWT (same as /api/v1/takeover).","operationId":"takeover_report_api_v1_takeover_report_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TakeoverReportIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/takeover/reports":{"get":{"summary":"Takeover Reports List","description":"Owner can see takeover issues their agents have reported.","operationId":"takeover_reports_list_api_v1_takeover_reports_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/agents/{agent_id}/reputation":{"get":{"summary":"Agent Reputation","operationId":"agent_reputation_api_v1_agents__agent_id__reputation_get","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/devices":{"get":{"summary":"Devices","description":"The phones/browsers that receive approval requests (first tap wins;\nthe others are told to dismiss).","operationId":"devices_api_devices_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/devices/{device_id}":{"delete":{"summary":"Device Remove","operationId":"device_remove_api_devices__device_id__delete","parameters":[{"name":"device_id","in":"path","required":true,"schema":{"type":"string","title":"Device Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/browserinfo":{"get":{"summary":"Browserinfo","description":"Client-side WebAuthn environment probe (diagnostic).","operationId":"browserinfo_api_browserinfo_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/page-version":{"get":{"summary":"Page Version","operationId":"page_version_api_page_version_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/healthz":{"get":{"summary":"Healthz","operationId":"healthz_api_healthz_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/download/wordpress":{"get":{"summary":"Download Wordpress","description":"The WordPress / WooCommerce plugin zip (newest version).","operationId":"download_wordpress_download_wordpress_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/download/android":{"get":{"summary":"Download Android","description":"Serve the latest APK with the correct content type and filename so\nmobile browsers don't save it as .bin.","operationId":"download_android_download_android_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/legal/{doc}":{"get":{"summary":"Legal Page","operationId":"legal_page_legal__doc__get","parameters":[{"name":"doc","in":"path","required":true,"schema":{"type":"string","title":"Doc"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/.well-known/openid-configuration":{"get":{"summary":"Discovery","operationId":"discovery__well_known_openid_configuration_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/.well-known/oauth-authorization-server":{"get":{"summary":"Discovery","operationId":"discovery__well_known_oauth_authorization_server_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/jwks":{"get":{"summary":"<Lambda>","operationId":"_lambda__oidc_jwks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/authorize":{"get":{"summary":"Authorize","description":"GET or form POST (OIDC Core 3.1.2.1). On POST the parameters come from\nthe body; the agent header's htu then names the endpoint with all\nparameters as its query.","operationId":"authorize_oidc_authorize_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Authorize","description":"GET or form POST (OIDC Core 3.1.2.1). On POST the parameters come from\nthe body; the agent header's htu then names the endpoint with all\nparameters as its query.","operationId":"authorize_oidc_authorize_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/token":{"post":{"summary":"Token","operationId":"token_oidc_token_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/revoke":{"post":{"summary":"Revoke","description":"RFC 7009. The site ends its own sign-in: a refresh token or access\ntoken from that sign-in ends the whole session. Always 200.","operationId":"revoke_oidc_revoke_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/introspect":{"post":{"summary":"Introspect","description":"RFC 7662 token introspection. A site (confidential client) asks whether\nan access or refresh token it holds is still good; anything not live, not\nours, or issued to another client is {\"active\": false}.","operationId":"introspect_oidc_introspect_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/oidc/bc-authorize":{"post":{"summary":"Bc Authorize","description":"Backchannel authentication endpoint (CIBA Core 7.1).","operationId":"bc_authorize_oidc_bc_authorize_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/oidc/clients/{cid}":{"patch":{"summary":"Update Client","operationId":"update_client_api_oidc_clients__cid__patch","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Client","operationId":"delete_client_api_oidc_clients__cid__delete","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/oidc/userinfo":{"get":{"summary":"Userinfo","operationId":"userinfo_oidc_userinfo_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Userinfo","operationId":"userinfo_oidc_userinfo_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/oidc/clients":{"get":{"summary":"List Clients","operationId":"list_clients_api_oidc_clients_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Create Client","operationId":"create_client_api_oidc_clients_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/oidc/clients/{cid}/verify":{"post":{"summary":"Verify Client","description":"Fetch https://<site>/.well-known/authyouragent-site.txt and look for\nthis client's token. No redirects followed, small body, short timeout.","operationId":"verify_client_api_oidc_clients__cid__verify_post","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/oidc/clients/{cid}/secret":{"post":{"summary":"Rotate Secret","operationId":"rotate_secret_api_oidc_clients__cid__secret_post","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/oidc/authorize/wait/{txn}/status":{"get":{"summary":" Wait Status","operationId":"_wait_status_oidc_authorize_wait__txn__status_get","parameters":[{"name":"txn","in":"path","required":true,"schema":{"type":"string","title":"Txn"}},{"name":"k","in":"query","required":false,"schema":{"type":"string","default":"","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/oidc/authorize/wait/{txn}":{"get":{"summary":" Wait Page","operationId":"_wait_page_oidc_authorize_wait__txn__get","parameters":[{"name":"txn","in":"path","required":true,"schema":{"type":"string","title":"Txn"}},{"name":"k","in":"query","required":false,"schema":{"type":"string","default":"","title":"K"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/wba/key":{"post":{"summary":"Register Key","description":"The vault publishes (or replaces) its Web Bot Auth public key. Returns\nthe Signature-Agent address and the exact directory bytes to sign.","operationId":"register_key_api_v1_wba_key_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WbaKeyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/wba/proof":{"post":{"summary":"Upload Proof","operationId":"upload_proof_api_v1_wba_proof_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WbaProofIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/operators":{"get":{"summary":"List Mine","operationId":"list_mine_api_operators_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"post":{"summary":"Register","description":"A signed-in person registers their company as an operator. It starts\n`pending`: an admin switches it on by hand during the pilot.","operationId":"register_api_operators_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/operators/{oid}/secret":{"post":{"summary":"Rotate Secret","operationId":"rotate_secret_api_operators__oid__secret_post","parameters":[{"name":"oid","in":"path","required":true,"schema":{"type":"string","title":"Oid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/operators/{oid}/verify":{"post":{"summary":"Verify","operationId":"verify_api_operators__oid__verify_post","parameters":[{"name":"oid","in":"path","required":true,"schema":{"type":"string","title":"Oid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/admin/operators/{oid}/status":{"post":{"summary":"Admin Status","description":"Admin only: switch an operator on (needs a verified domain) or off.\nOff blocks every agent it created; on unblocks the ones off had blocked.","operationId":"admin_status_api_admin_operators__oid__status_post","parameters":[{"name":"oid","in":"path","required":true,"schema":{"type":"string","title":"Oid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/connect":{"get":{"summary":"Connect Page","operationId":"connect_page_connect_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/connect/start":{"post":{"summary":"Connect Start","operationId":"connect_start_api_connect_start_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/connect/finish":{"post":{"summary":"Connect Finish","operationId":"connect_finish_api_connect_finish_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/connect/deny":{"post":{"summary":"Connect Deny","operationId":"connect_deny_api_connect_deny_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/operator/token":{"post":{"summary":"Token","operationId":"token_api_v1_operator_token_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/operator/agents":{"post":{"summary":"Create Agent","operationId":"create_agent_api_v1_operator_agents_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}},"get":{"summary":"List Agents","operationId":"list_agents_api_v1_operator_agents_get","parameters":[{"name":"connection_id","in":"query","required":false,"schema":{"type":"string","default":"","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/operator/agents/{agent_id}":{"delete":{"summary":"Delete Agent","operationId":"delete_agent_api_v1_operator_agents__agent_id__delete","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/operator/connections":{"get":{"summary":"List Connections","operationId":"list_connections_api_v1_operator_connections_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/operator/connections/{connection_id}":{"delete":{"summary":"End Connection Op","operationId":"end_connection_op_api_v1_operator_connections__connection_id__delete","parameters":[{"name":"connection_id","in":"path","required":true,"schema":{"type":"string","title":"Connection Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connections":{"get":{"summary":"My Connections","operationId":"my_connections_api_connections_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/connections/{cid}/disconnect":{"post":{"summary":"Disconnect","operationId":"disconnect_api_connections__cid__disconnect_post","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/connections/{cid}/limit":{"post":{"summary":"Set Limit","operationId":"set_limit_api_connections__cid__limit_post","parameters":[{"name":"cid","in":"path","required":true,"schema":{"type":"string","title":"Cid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/agents/{agent_id}/password-manager":{"post":{"summary":"Set Secrets","description":"The owner allows (or stops) password-manager filling for an agent whose\nbrowser runs on the company's computers.","operationId":"set_secrets_api_agents__agent_id__password_manager_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"string","title":"Agent Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/takeover":{"post":{"summary":"Takeover Request","operationId":"takeover_request_api_v1_takeover_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/takeover/active":{"get":{"summary":"Takeover Active","operationId":"takeover_active_api_takeover_active_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/takeover/{sid}/cancel":{"post":{"summary":"Takeover Cancel","operationId":"takeover_cancel_api_takeover__sid__cancel_post","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/app/takeover/{sid}":{"get":{"summary":"Takeover Page","operationId":"takeover_page_app_takeover__sid__get","parameters":[{"name":"sid","in":"path","required":true,"schema":{"type":"string","title":"Sid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"summary":"Home Page","operationId":"home_page__get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs":{"get":{"summary":"Docs Index","operationId":"docs_index_docs_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/pitch":{"get":{"summary":"Pitch Page","operationId":"pitch_page_pitch_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/challenge":{"get":{"summary":"Site Challenge","operationId":"site_challenge_challenge_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/for-shops":{"get":{"summary":"For Shops","operationId":"for_shops_for_shops_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/how-it-works":{"get":{"summary":"How It Works","operationId":"how_it_works_how_it_works_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs/agents":{"get":{"summary":"Docs Agents","operationId":"docs_agents_docs_agents_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs/{section}/{page}":{"get":{"summary":"Docs Page","operationId":"docs_page_docs__section___page__get","parameters":[{"name":"section","in":"path","required":true,"schema":{"type":"string","title":"Section"}},{"name":"page","in":"path","required":true,"schema":{"type":"string","title":"Page"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/sitemap.xml":{"get":{"summary":"Sitemap Xml","operationId":"sitemap_xml_sitemap_xml_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/check":{"get":{"summary":"Readiness Page","operationId":"readiness_page_check_get","parameters":[{"name":"site","in":"query","required":false,"schema":{"type":"string","default":"","title":"Site"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/readiness":{"get":{"summary":"Readiness Api","operationId":"readiness_api_api_readiness_get","parameters":[{"name":"site","in":"query","required":true,"schema":{"type":"string","title":"Site"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/tools/check-agent":{"get":{"summary":"Checkagent Page","operationId":"checkagent_page_tools_check_agent_get","parameters":[{"name":"agent","in":"query","required":false,"schema":{"type":"string","default":"","title":"Agent"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Checkagent Post","operationId":"checkagent_post_tools_check_agent_post","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/api/v1/check-agent":{"post":{"summary":"Checkagent Api","operationId":"checkagent_api_api_v1_check_agent_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckAgentIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/challenge/agents.txt":{"get":{"summary":"Challenge Agents Txt","operationId":"challenge_agents_txt_challenge_agents_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/llms.txt":{"get":{"summary":"Llms Txt","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/robots.txt":{"get":{"summary":"Robots Txt","operationId":"robots_txt_robots_txt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/app":{"get":{"summary":"Index","operationId":"index_app_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/.well-known/assetlinks.json":{"get":{"summary":"Assetlinks","description":"Digital Asset Links: lets the Auth Your Agent Android app use this RP's passkeys\n(get_login_creds) and open its links (handle_all_urls).","operationId":"assetlinks__well_known_assetlinks_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/manifest.webmanifest":{"get":{"summary":"Manifest","operationId":"manifest_manifest_webmanifest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/sw.js":{"get":{"summary":"Sw","operationId":"sw_sw_js_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/icon-192.png":{"get":{"summary":"Icon192","operationId":"icon192_icon_192_png_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/icon-512.png":{"get":{"summary":"Icon512","operationId":"icon512_icon_512_png_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AgentIn":{"properties":{"name":{"type":"string","title":"Name"},"pubkey":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pubkey"},"jwk":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Jwk"}},"type":"object","required":["name"],"title":"AgentIn"},"AgentNoteIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"text":{"type":"string","title":"Text"},"title":{"type":"string","title":"Title","default":""},"kind":{"type":"string","title":"Kind","default":"agent"}},"type":"object","required":["agent_id","agent_jwt","text"],"title":"AgentNoteIn"},"AgentOnlyIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"}},"type":"object","required":["agent_id","agent_jwt"],"title":"AgentOnlyIn"},"AgentReqIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"site":{"type":"string","title":"Site"},"scopes":{"items":{},"type":"array","title":"Scopes"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"user_info":{"items":{},"type":"array","title":"User Info","default":[]}},"type":"object","required":["agent_id","site","scopes","agent_jwt"],"title":"AgentReqIn"},"AgentStatusReport":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"status":{"type":"string","title":"Status"},"site":{"type":"string","title":"Site","default":""},"detail":{"type":"string","title":"Detail","default":""},"quiet":{"type":"boolean","title":"Quiet","default":false}},"type":"object","required":["agent_id","agent_jwt","status"],"title":"AgentStatusReport"},"ApprovalModeIn":{"properties":{"site":{"type":"string","title":"Site","default":"*"},"mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mode"},"hourly_limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Hourly Limit"},"pause_scope":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pause Scope"}},"type":"object","title":"ApprovalModeIn"},"ApproveLimitsIn":{"properties":{"expires_in":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Expires In"},"max_uses":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Uses"}},"type":"object","title":"ApproveLimitsIn"},"CheckAgentIn":{"properties":{"request":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request"},"address":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Address"},"as_signed":{"type":"boolean","title":"As Signed","default":false}},"type":"object","title":"CheckAgentIn"},"DeleteIn":{"properties":{"confirm":{"type":"string","title":"Confirm"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Password"}},"type":"object","required":["confirm"],"title":"DeleteIn"},"FcmIn":{"properties":{"token":{"type":"string","title":"Token"},"app_version":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"App Version"}},"type":"object","required":["token"],"title":"FcmIn"},"GrantUserInfoIn":{"properties":{"user_info":{"items":{},"type":"array","title":"User Info"}},"type":"object","required":["user_info"],"title":"GrantUserInfoIn"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"NotifySettingsIn":{"properties":{"notify_sign_out":{"type":"boolean","title":"Notify Sign Out"}},"type":"object","required":["notify_sign_out"],"title":"NotifySettingsIn"},"PhoneSendIn":{"properties":{"phone":{"type":"string","title":"Phone"}},"type":"object","required":["phone"],"title":"PhoneSendIn"},"PhoneVerifyIn":{"properties":{"phone":{"type":"string","title":"Phone"},"code":{"type":"string","title":"Code"}},"type":"object","required":["phone","code"],"title":"PhoneVerifyIn"},"PlanIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"title":{"type":"string","title":"Title"},"start_at":{"type":"integer","title":"Start At"},"end_at":{"type":"integer","title":"End At"},"steps":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Steps"},"runs":{"type":"integer","title":"Runs","default":1},"every":{"type":"string","title":"Every","default":""}},"type":"object","required":["agent_id","agent_jwt","title","start_at","end_at","steps"],"title":"PlanIn"},"PlanResultIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"txn_id":{"type":"string","title":"Txn Id"},"result":{"type":"string","title":"Result"}},"type":"object","required":["agent_id","agent_jwt","txn_id","result"],"title":"PlanResultIn"},"ProfileIn":{"properties":{"display_name":{"type":"string","title":"Display Name"}},"type":"object","required":["display_name"],"title":"ProfileIn"},"PushIn":{"properties":{"endpoint":{"type":"string","title":"Endpoint"},"p256dh":{"type":"string","title":"P256Dh"},"auth":{"type":"string","title":"Auth"}},"type":"object","required":["endpoint","p256dh","auth"],"title":"PushIn"},"RecoverCompleteIn":{"properties":{"email":{"type":"string","title":"Email"},"sms_code":{"type":"string","title":"Sms Code"},"recovery_code":{"type":"string","title":"Recovery Code"},"new_password":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"New Password"}},"type":"object","required":["email","sms_code","recovery_code"],"title":"RecoverCompleteIn"},"RecoverStartIn":{"properties":{"email":{"type":"string","title":"Email"},"phone":{"type":"string","title":"Phone"}},"type":"object","required":["email","phone"],"title":"RecoverStartIn"},"ReportIn":{"properties":{"access_token":{"type":"string","title":"Access Token"},"kind":{"type":"string","title":"Kind"},"detail":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Detail","default":""}},"type":"object","required":["access_token","kind"],"title":"ReportIn"},"StepupIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"site":{"type":"string","title":"Site"},"action":{"type":"string","title":"Action"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"stepup_request":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stepup Request"},"details":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Details"}},"type":"object","required":["agent_id","site","action","agent_jwt"],"title":"StepupIn"},"StepupVerifyIn":{"properties":{"stepup_token":{"type":"string","title":"Stepup Token"},"site":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Site"},"action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},"type":"object","required":["stepup_token"],"title":"StepupVerifyIn"},"TakeoverReportIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"site":{"type":"string","title":"Site"},"kind":{"type":"string","title":"Kind"},"detail":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Detail","default":""},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","default":""}},"type":"object","required":["agent_id","agent_jwt","site","kind"],"title":"TakeoverReportIn"},"TokenIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"site":{"type":"string","title":"Site"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"refresh_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Refresh Token"}},"type":"object","required":["agent_id","site","agent_jwt"],"title":"TokenIn"},"TxAck":{"properties":{"approve":{"type":"boolean","title":"Approve"},"assertion":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Assertion"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Password"},"client":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Client"},"expires_in":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Expires In"},"max_uses":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Max Uses"},"plan_steps":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Plan Steps"}},"type":"object","required":["approve"],"title":"TxAck"},"UserIn":{"properties":{"email":{"type":"string","title":"Email"},"password":{"type":"string","title":"Password"},"display_name":{"type":"string","title":"Display Name","default":""}},"type":"object","required":["email","password"],"title":"UserIn"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VerifyIn":{"properties":{"access_token":{"type":"string","title":"Access Token"},"dpop":{"type":"string","title":"Dpop"},"method":{"type":"string","title":"Method"},"url":{"type":"string","title":"Url"},"agent_jwt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agent Jwt"},"stepup_token":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stepup Token"},"site":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Site"},"action":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Action"}},"type":"object","required":["access_token","dpop","method","url"],"title":"VerifyIn"},"WbaKeyIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"jwk":{"additionalProperties":true,"type":"object","title":"Jwk"}},"type":"object","required":["agent_id","agent_jwt","jwk"],"title":"WbaKeyIn"},"WbaProofIn":{"properties":{"agent_id":{"type":"string","title":"Agent Id"},"agent_jwt":{"type":"string","title":"Agent Jwt"},"headers":{"additionalProperties":true,"type":"object","title":"Headers"}},"type":"object","required":["agent_id","agent_jwt","headers"],"title":"WbaProofIn"}}}}