{
 "url": "https://agenticweb.wiki/compare/aauth-vs-daap/",
 "title": "AAuth vs DAAP: differences & adoption",
 "description": "Agent Authorization Grant vs OAuth Profile for Delegated AI Agent Authorization: The map lists them as complementary: sites and agents commonly implement…",
 "markdown_url": "https://agenticweb.wiki/compare/aauth-vs-daap/index.md",
 "markdown": "# Agent Authorization Grant (AAuth) vs OAuth Profile for Delegated AI Agent Authorization (DAAP)\n\nThe map lists them as complementary: sites and agents commonly implement both.\n\n[3 Permit](/category/permit/) [Agent Authorization Grant](/protocols/aauth/) · [3 Permit](/category/permit/) [OAuth Profile for Delegated AI Agent Authorization](/protocols/daap/)\n\n|  | [Agent Authorization Grant](/protocols/aauth/) AAuth | [OAuth Profile for Delegated AI Agent Authorization](/protocols/daap/) DAAP |\n| --- | --- | --- |\n| Lifecycle step | 3 Permit: What may the agent do here? | 3 Permit: What may the agent do here? |\n| Answers | How can a conversational AI agent, reached over a channel without browser redirect (phone, SMS), obtain a properly scoped OAuth access token without impersonating the user? | How can a human user delegate constrained, attenuable, revocable authority to an AI agent using standard OAuth mechanisms, with no new endpoints or claims required? |\n| Governed by | IETF individual Internet-Draft (OAuth-adjacent, not yet adopted by the OAuth Working Group as of this verification) | IETF individual Internet-Draft (OAuth-adjacent; not yet adopted by the OAuth Working Group as of this verification) |\n| Status (issuer's words) | Expired Internet-Draft (expired 2026-04-23) | Internet-Draft, individual submission, Active |\n| Version | draft-rosenberg-oauth-aauth-01 (2026-04-22) | draft-mishra-oauth-agent-grants-02 (2026-08-30) |\n| Form / transport | endpoint | endpoint |\n| Found at | OAuth 2.1 extension grant flow; no well-known file defined | /.well-known/oauth-authorization-server |\n| Implementation | none found | prototype |\n| Evidence | 5 verified | 2 verified, 1 reported |\n| Primary use case | Delegate a user's authority to an agent | Delegate a user's authority to an agent |\n| Last verified | 2026-10-23 (current) | 2026-10-23 (current) |\n| Specification | [https://datatracker.ietf.org/doc/html/draft-rosenberg-oauth-aauth](https://datatracker.ietf.org/doc/html/draft-rosenberg-oauth-aauth) | [https://datatracker.ietf.org/doc/html/draft-mishra-oauth-agent-grants-02](https://datatracker.ietf.org/doc/html/draft-mishra-oauth-agent-grants-02) |\n\n## When to use which\n\n- Choose Agent Authorization Grant when your question is “How can a conversational AI agent, reached over a channel without browser redirect (phone, SMS), obtain a properly scoped OAuth access token without impersonating the user?” and you accept its maturity: status \"Expired Internet-Draft (expired 2026-04-23)\", implementation none found. It is no longer maintained; prefer its successor.\n- Choose OAuth Profile for Delegated AI Agent Authorization when your question is “How can a human user delegate constrained, attenuable, revocable authority to an AI agent using standard OAuth mechanisms, with no new endpoints or claims required?” and you accept its maturity: status \"Internet-Draft, individual submission, Active\", implementation prototype.\n\nGuidance is derived from the two records (question, status, implementation, prerequisites, pairings), not from opinion. Each record's page carries its numbered references.\n\n## Read the full articles\n\n- [Agent Authorization Grant](/protocols/aauth/): How can a conversational AI agent, reached over a channel without browser redirect (phone, SMS), obtain a properly scoped OAuth access token without impersonating the user?\n- [OAuth Profile for Delegated AI Agent Authorization](/protocols/daap/): How can a human user delegate constrained, attenuable, revocable authority to an AI agent using standard OAuth mechanisms, with no new endpoints or claims required?\n\nAsk the MCP server to compare any two: the compare-protocols prompt, or get on both ids. [Connect](/connect/).\n\n[aauth.json](/data/protocols/aauth.json) · [daap.json](/data/protocols/daap.json) · [Markdown](/compare/aauth-vs-daap/index.md)\n"
}