<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-skyfire-oauth-kyapay-token-exchange-02" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title>KYAPay Token Exchange</title>
    <seriesInfo name="Internet-Draft" value="draft-skyfire-oauth-kyapay-token-exchange-02"/>
    <author initials="A." surname="Agarwal" fullname="Ankit Agarwal">
      <organization>Skyfire Systems Inc.</organization>
      <address>
        <email>ankit_agarwal@yahoo.com</email>
        <uri>https://skyfire.xyz</uri>
      </address>
    </author>
    <author initials="M." surname="Jones" fullname="Michael B. Jones">
      <organization>Self-Issued Consulting</organization>
      <address>
        <email>michael_b_jones@hotmail.com</email>
        <uri>https://self-issued.info/</uri>
      </address>
    </author>
    <author initials="A." surname="Hingnikar" fullname="Abhishek Hingnikar">
      <organization>WorkOS</organization>
      <address>
        <email>abhishek@hingnikar.com</email>
      </address>
    </author>
    <author initials="J." surname="Hickman" fullname="Jeffrey Hickman">
      <organization>Ory</organization>
      <address>
        <email>jhickman.it@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="November" day="02"/>
    <area>Security</area>
    <workgroup>Web Authorization Protocol</workgroup>
    <keyword>agent</keyword>
    <keyword>identity</keyword>
    <keyword>agentic</keyword>
    <keyword>payment</keyword>
    <keyword>commerce</keyword>
    <abstract>
      <?line 123?>

<t>This specification describes how KYAPay tokens can be exchanged for
OAuth access tokens
to dynamically grant agents access to resources they need
to accomplish their mission.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://skyfire-xyz.github.io/draft-skyfire-oauth-kyapay-token-exchange/draft-skyfire-oauth-kyapay-token-exchange.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-skyfire-oauth-kyapay-token-exchange/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/skyfire-xyz/draft-skyfire-oauth-kyapay-token-exchange"/>.</t>
    </note>
  </front>
  <middle>
    <?line 131?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>KYAPay tokens <xref target="I-D.skyfire-oauth-kyapay-token"/>
are used by agents to identify themselves,
the principal they are acting on behalf of,
their payment capabilities,
their authorized scope of action or mission,
and their intended audience.
Agents may need access to resources to accomplish their mission.
This specification describes how an agent can present a KYAPay token
to obtain an OAuth access token granting access to a resource
that it needs to accomplish its mission.</t>
      <section anchor="use-cases-for-kyapay-token-exchange">
        <name>Use Cases for KYAPay Token Exchange</name>
        <t>Enabling agents to create accounts and/or log in to accounts
on behalf of their human principals is a design goal.
To achieve this, systems can utilize a token exchange workflow.
In this process, a Security Token Service (STS), Identity Provider (IdP),
or OAuth Authorization Server verifies incoming KYA tokens
and extracts claims associated with the human principal, such as email addresses.
The authorization server then performs a token exchange,
swapping the KYA token for a standard OAuth Access Token,
which the agent subsequently uses to interact with the target service.
Crucially, this architecture allows the service to know
that the agent is acting on behalf of the user,
making it possible to differentiate between
direct, human-present sessions and human-initiated, agentic sessions
for authorization, auditing, and security purposes.</t>
        <t>One example use case is to exchange a KYAPay token for an OAuth access token
for a Model Context Protocol <xref target="MCP"/> service
when the agent needs to use the MCP service to accomplish its goals.</t>
        <t>Early production deployments of KYAPay tokens are described at https://kyapay.org.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<section anchor="roles">
        <name>Roles</name>
        <t>The roles defined in <xref target="I-D.skyfire-oauth-kyapay-token"/> are incorporated into this specification.</t>
      </section>
    </section>
    <section anchor="kyapay-token-exchange">
      <name>KYAPay Token Exchange</name>
      <t>The KYAPay token contains identifying information for both
the principal on whose behalf the request is being made
(in the Human Identity (<tt>hid</tt>) claim) and
the agent that is authorized to act on behalf of the principal
(in the Agent Platform Identity (<tt>apd</tt>) claim and
the Agent Identity (<tt>aid</tt>) claim).</t>
      <t>This specification defines two methods of exchanging KYAPay tokens for access tokens:
a direct method and
a method using a
Client ID Metadata Document (CIMD) <xref target="I-D.ietf-oauth-client-id-metadata-document"/>.
It also defines an authorization grant profile identifier,
which authorization servers and clients use
to declare that they support KYAPay Token Exchange,
and an optional authorization server metadata parameter
listing supported KYAPay token issuers.</t>
      <t>The steps when successfully exchanging a KYAPay token for an access token
and using it with the protected resource are:</t>
      <ol spacing="normal" type="1"><li>
          <t>The client retrieves the OAuth protected resource metadata document <xref target="RFC9728"/>.</t>
        </li>
        <li>
          <t>The client determines from the resource metadata what authorization server(s)
can be used for the token exchange.</t>
        </li>
        <li>
          <t>The client chooses an authorization server and retrieves its metadata <xref target="RFC8414"/>.</t>
        </li>
        <li>
          <t>The client determines from the authorization server metadata whether
the authorization server supports KYAPay Token Exchange, per <xref target="as-metadata"/>.
It also may be able to determine if the authorization server
accepts tokens from specific KYAPay token issuers.</t>
        </li>
        <li>
          <t>The client makes a token exchange <xref target="RFC8693"/> request to the authorization server,
passing the KYAPay token as the <tt>subject_token</tt> value,
the <tt>subject_token_type</tt> value of <tt>urn:ietf:params:oauth:token-type:kyapay</tt>, and
passing the resource identifier <xref target="RFC8707"/> as the "resource" value.</t>
        </li>
        <li>
          <t>The authorization server returns an access token for the resource to the client
using information from the KYAPay token to create the access token.
Note that this may be a bearer access token <xref target="RFC6750"/>
or a DPoP-bound access token <xref target="RFC9449"/>.
The access token will contain or reference sufficient information
for the protected resource to be able to provision access for the client,
which may include dynamic account creation.</t>
        </li>
        <li>
          <t>The client uses the access token to make an HTTP resource request to the resource.</t>
        </li>
        <li>
          <t>The resource responds to the resource request providing the requested information.</t>
        </li>
      </ol>
      <t>Note that the ability to use information in the KYAPay token
to dynamically provision access to the resource by the agent is critical
to enable seamless agentic access to resources for the user.
This obviates the need to pre-provision an account for the user at every resource
that their agent might access -- a process that would not scale.</t>
    </section>
    <section anchor="direct-kyapay-token-exchange-method">
      <name>Direct KYAPay Token Exchange Method</name>
      <t>The direct KYAPay Token Exchange method uses a Client Identifier that
is constructed directly from information in the KYA Token.
Its value contains
the token issuer,
the token originator,
the agent platform identifier, and
the agent identity identifier.
Specifically, it is the string concatenation of
- the string literal "kyapay:",
- the <tt>iss</tt> claim value,
- the string literal "|",
- the <tt>ori</tt> claim value,
- the string literal "|",
- the <tt>apd</tt> claim's <tt>id</tt> value,
- the string literal "|", and
- the <tt>aid</tt> claim's <tt>id</tt> value.</t>
      <t>If the KYAPay token has no <tt>ori</tt> claim, or no <tt>apd</tt> claim,
the corresponding part is the empty string,
so the Client ID always has four parts separated by "|".</t>
      <t>An example such Client ID value is:</t>
      <artwork><![CDATA[
kyapay:https://app.skyfire.xyz|https://app.skyfire.xyz|a283ced5-95be-4abe-81aa-51552e8876ad|7d889702-7b6a-46cb-9bdd-10e83d17b18d
]]></artwork>
      <t>This requires the authorization server to recognize and accept these Client IDs
without client pre-registration (as described in <xref section="2" sectionFormat="of" target="RFC6749"/>)
or dynamic client registration <xref target="RFC7591"/>.
There is precedent for authorization servers using non-pre-registered clients
based on the syntax of their Client Identifiers;
the Client ID Metadata Document (CIMD) <xref target="I-D.ietf-oauth-client-id-metadata-document"/>
specification uses unregistered Client IDs,
the OpenID Federation <xref target="OpenID.Federation"/>
specification uses unregistered Client IDs,
and the OpenID for Verifiable Presentations <xref target="OpenID4VP"/>
specification uses unregistered Client IDs.
The OpenID4VP specification also uses Client ID prefixes,
as this specification does.</t>
      <t>The token exchange uses <xref target="RFC8693"/> and is performed as follows:</t>
      <ul spacing="normal">
        <li>
          <t>The "none" client authentication method <xref target="RFC7591"/> is used.</t>
        </li>
        <li>
          <t>An HTTP POST is made to the authorization server's token endpoint.</t>
        </li>
        <li>
          <t>The <tt>grant_type</tt> value is <tt>urn:ietf:params:oauth:grant-type:token-exchange</tt>.</t>
        </li>
        <li>
          <t>The <tt>client_id</tt> value is the Client ID constructed as described above.</t>
        </li>
        <li>
          <t>The <tt>subject_token</tt> value is the KYAPay token being exchanged.</t>
        </li>
        <li>
          <t>The <tt>subject_token_type</tt> value is <tt>urn:ietf:params:oauth:token-type:kyapay</tt>.</t>
        </li>
        <li>
          <t>The <tt>resource</tt> value is the URL of the protected resource
that the resulting token is intended for.</t>
        </li>
        <li>
          <t>The <tt>requested_token_type</tt> parameter <bcp14>MAY</bcp14> be included;
if included, its value is <tt>urn:ietf:params:oauth:token-type:access_token</tt>.</t>
        </li>
        <li>
          <t>No <tt>actor_token</tt> or <tt>actor_token_type</tt> parameters are included.</t>
        </li>
      </ul>
      <t>The following is a non-normative example of a POST request
to perform a direct KYAPay token exchange for an access token:</t>
      <artwork><![CDATA[
POST /token HTTP/1.1
Host: as.example.com
Content-Type: application/x-www-form-urlencoded

grant_type=urn:ietf:params:oauth:grant-type:token-exchange
&client_id=kyapay:https://app.skyfire.xyz|https://app.skyfire.xyz|a283ced5-95be-4abe-81aa-51552e8876ad|7d889702-7b6a-46cb-9bdd-10e83d17b18d
&subject_token=*KYAPay Token*
&subject_token_type=urn:ietf:params:oauth:token-type:kyapay
&resource=https://mcp.acme.example/
&requested_token_type=urn:ietf:params:oauth:token-type:access_token
]]></artwork>
    </section>
    <section anchor="kyapay-token-exchange-method-using-client-id-metadata-document-cimd">
      <name>KYAPay Token Exchange Method using Client ID Metadata Document (CIMD)</name>
      <t>This section describes a KYAPay token exchange method using a
Client ID Metadata Document (CIMD) <xref target="I-D.ietf-oauth-client-id-metadata-document"/>.
This method uses the CIMD URL as the Client ID.</t>
      <t>As described in <xref section="8.2" sectionFormat="of" target="I-D.ietf-oauth-client-id-metadata-document"/>
(Client Authentication),
clients that are capable of maintaining private key material and
performing client authentication <bcp14>SHOULD</bcp14> do so with an acceptable
method, such as the private_key_jwt <xref target="OpenID.Core"/> <xref target="RFC7523"/> client authentication method.
Otherwise, the "none" client authentication method <xref target="RFC7591"/> is used,
and the <tt>client_id</tt> parameter is the CIMD URL.</t>
      <t>The token exchange uses <xref target="RFC8693"/> and is performed as follows:</t>
      <ul spacing="normal">
        <li>
          <t>An HTTP POST is made to the authorization server's token endpoint.</t>
        </li>
        <li>
          <t>The <tt>grant_type</tt> value is <tt>urn:ietf:params:oauth:grant-type:token-exchange</tt>.</t>
        </li>
        <li>
          <t>The <tt>subject_token</tt> value is the KYAPay token being exchanged.</t>
        </li>
        <li>
          <t>The <tt>subject_token_type</tt> value is <tt>urn:ietf:params:oauth:token-type:kyapay</tt>.</t>
        </li>
        <li>
          <t>The <tt>resource</tt> value is the URL of the protected resource
that the resulting token is intended for.</t>
        </li>
        <li>
          <t>The <tt>requested_token_type</tt> parameter <bcp14>MAY</bcp14> be included;
if included, its value is <tt>urn:ietf:params:oauth:token-type:access_token</tt>.</t>
        </li>
        <li>
          <t>No <tt>actor_token</tt> or <tt>actor_token_type</tt> parameters are included.</t>
        </li>
      </ul>
      <t>The following is a non-normative example of a POST request
by a CIMD client using the private_key_jwt client authentication method
to perform a KYAPay token exchange for an access token:</t>
      <artwork><![CDATA[
POST /token HTTP/1.1
Host: as.example.com
Content-Type: application/x-www-form-urlencoded

grant_type=urn:ietf:params:oauth:grant-type:token-exchange
&subject_token=*KYAPay Token*
&subject_token_type=urn:ietf:params:oauth:token-type:kyapay
&resource=https://mcp.acme.example/
&requested_token_type=urn:ietf:params:oauth:token-type:access_token
&client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer
&client_assertion=*JWT whose iss and sub are the CIMD URL*
]]></artwork>
    </section>
    <section anchor="as-metadata">
      <name>Authorization Server Metadata</name>
      <t>An authorization server declares support for KYAPay token exchange by including the value
<tt>urn:ietf:params:oauth:grant-profile:kyapay</tt>
in its <tt>authorization_grant_profiles_supported</tt> metadata parameter
<xref target="I-D.ietf-oauth-identity-assertion-authz-grant"/>.
An authorization server that includes this value <bcp14>MUST</bcp14> also include
<tt>urn:ietf:params:oauth:grant-type:token-exchange</tt> in <tt>grant_types_supported</tt>.</t>
      <t>Including this value indicates only that the authorization server
implements the processing rules of this specification.
It does not indicate that a token from any particular KYAPay token issuer
will be accepted.</t>
      <t>An authorization server <bcp14>MAY</bcp14> also include the
<tt>kyapay_issuers_supported</tt> metadata parameter <xref target="RFC8414"/>.
The definition of this parameter is:</t>
      <dl newline="true">
        <dt><tt>kyapay_issuers_supported</tt>:</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>.
JSON array containing a list of issuer identifiers of KYAPay token issuers,
as specified in <xref target="I-D.skyfire-oauth-kyapay-token"/>,
that can be used with this authorization server.
Authorization servers <bcp14>MAY</bcp14> choose not to advertise some supported token issuers,
even when this parameter is used.
In some use cases, the set of token issuers will not be enumerable.
The array <bcp14>MAY</bcp14> be empty.</t>
        </dd>
      </dl>
      <t>An authorization server that includes <tt>kyapay_issuers_supported</tt> <bcp14>MUST</bcp14> also include
<tt>urn:ietf:params:oauth:grant-profile:kyapay</tt> in <tt>authorization_grant_profiles_supported</tt>.</t>
    </section>
    <section anchor="client-metadata">
      <name>Client Metadata</name>
      <t>A client can declare support for KYAPay token exchange by including the value
<tt>urn:ietf:params:oauth:grant-profile:kyapay</tt>
in its <tt>authorization_grant_profiles_supported</tt> client metadata parameter
<xref target="I-D.ietf-oauth-identity-assertion-authz-grant"/>,
for example, in its Client ID Metadata Document.
A client that includes this value <bcp14>MUST</bcp14> also include
<tt>urn:ietf:params:oauth:grant-type:token-exchange</tt> in its <tt>grant_types</tt>.</t>
      <t>Clients using the direct method have no client metadata,
so this applies only to clients that publish or register metadata.</t>
    </section>
    <section anchor="kyapay-token-example">
      <name>KYAPay Token Example</name>
      <t>An example decoded set of JWT Header Parameters for a KYAPay token is:</t>
      <artwork><![CDATA[
{
  "alg": "ES256",
  "kid": "BEDD-0",
  "typ": "kya+jwt"
}
]]></artwork>
      <t>An example decoded JWT Claims Set for a KYAPay token is:</t>
      <artwork><![CDATA[
{
  "env": "production",
  "ori": "https://app.skyfire.xyz",
  "itg": "cursor-agent",
  "tsi": "886eef79-4d90-4b8d-81f0-ce5c6c7dac13",
  "tdm": "auth101.dev",
  "hid": {
    "email": "example@skyfire.xyz",
    "verifier": "https://app.skyfire.xyz",
    "verified": true
  },
  "aid": {
    "id": "7d889702-7b6a-46cb-9bdd-10e83d17b18d",
    "name": "Buyer 1",
    "creation_ip": "12.50.206.98"
  },
  "apd": {
    "id": "a283ced5-95be-4abe-81aa-51552e8876ad",
    "name": "E2E Test Org 1",
    "email": "example@skyfire.xyz",
    "verifier": "https://app.skyfire.xyz",
    "verified": true
  },
  "scope": "xyz pdq",
  "iat": 1782245616,
  "iss": "https://app.skyfire.xyz",
  "jti": "019ef61d-eb8f-759b-9302-d998b294fcc9",
  "aud": "886eef79-4d90-4b8d-81f0-ce5c6c7dac13",
  "sub": "8fa1438f-8dd0-4e91-abb8-888cdbeb6d5d",
  "exp": 1782245916
}
]]></artwork>
      <t>The KYAPay token is used as the <tt>subject_token</tt> value for the token exchange.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations defined in <xref target="I-D.skyfire-oauth-kyapay-token"/>
and <xref target="RFC8693"/> apply to this specification.</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>The privacy considerations defined in <xref target="I-D.skyfire-oauth-kyapay-token"/>
and <xref target="RFC8693"/> apply to this specification.</t>
      <t>The <tt>kyapay_issuers_supported</tt> value may disclose a set of
KYAPay token issuers that the authorization server trusts.
Clients may need to know, before making a request,
whether a KYAPay token they hold or can obtain will be accepted.
Deployments that consider their issuer relationships sensitive
should take this into account before publishing the list.
As in <xref section="9.4" sectionFormat="of" target="I-D.ietf-oauth-identity-assertion-authz-grant"/>,
issuer lists are not conveyed in <tt>authorization_grant_profiles_supported</tt>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="oauth-uri-registration">
        <name>OAuth URI Registration</name>
        <t>This specification registers the following values in the
IANA "OAuth URI" registry <xref target="IANA.OAuth.Parameters"/>
established by <xref target="RFC6755"/>.</t>
        <section anchor="urnietfparamsoauthtoken-typekyapay">
          <name>urn:ietf:params:oauth:token-type:kyapay</name>
          <ul spacing="normal">
            <li>
              <t>URN: urn:ietf:params:oauth:token-type:kyapay</t>
            </li>
            <li>
              <t>Common Name: KYAPay Token Type</t>
            </li>
            <li>
              <t>Change controller: IETF</t>
            </li>
            <li>
              <t>Specification Document: <xref target="kyapay-token-exchange"/> of this specification</t>
            </li>
          </ul>
        </section>
        <section anchor="urnietfparamsoauthgrant-profilekyapay">
          <name>urn:ietf:params:oauth:grant-profile:kyapay</name>
          <ul spacing="normal">
            <li>
              <t>URN: urn:ietf:params:oauth:grant-profile:kyapay</t>
            </li>
            <li>
              <t>Common Name: Authorization grant profile identifier for KYAPay Token Exchange</t>
            </li>
            <li>
              <t>Change controller: IETF</t>
            </li>
            <li>
              <t>Specification Document: <xref target="as-metadata"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="oauth-authorization-server-metadata-registration">
        <name>OAuth Authorization Server Metadata Registration</name>
        <t>This specification registers the following parameter in the
IANA "OAuth Authorization Server Metadata" registry <xref target="IANA.OAuth.Parameters"/>
established by <xref target="RFC8414"/>.</t>
        <section anchor="kyapayissuerssupported">
          <name>kyapay_issuers_supported</name>
          <ul spacing="normal">
            <li>
              <t>Metadata Name: kyapay_issuers_supported</t>
            </li>
            <li>
              <t>Metadata Description: JSON array containing a list of issuer identifiers of
KYAPay token issuers that can be used with this authorization server</t>
            </li>
            <li>
              <t>Change Controller: IETF</t>
            </li>
            <li>
              <t>Specification Document(s): <xref target="as-metadata"/> of this specification</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="RFC8693">
          <front>
            <title>OAuth 2.0 Token Exchange</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="A. Nadalin" initials="A." surname="Nadalin"/>
            <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <date month="January" year="2020"/>
            <abstract>
              <t>This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8693"/>
          <seriesInfo name="DOI" value="10.17487/RFC8693"/>
        </reference>
        <reference anchor="RFC8707">
          <front>
            <title>Resource Indicators for OAuth 2.0</title>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document specifies an extension to the OAuth 2.0 Authorization Framework defining request parameters that enable a client to explicitly signal to an authorization server about the identity of the protected resource(s) to which it is requesting access.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8707"/>
          <seriesInfo name="DOI" value="10.17487/RFC8707"/>
        </reference>
        <reference anchor="RFC9728">
          <front>
            <title>OAuth 2.0 Protected Resource Metadata</title>
            <author fullname="M.B. Jones" initials="M.B." surname="Jones"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <author fullname="A. Parecki" initials="A." surname="Parecki"/>
            <date month="April" year="2025"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client or authorization server can use to obtain the information needed to interact with an OAuth 2.0 protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9728"/>
          <seriesInfo name="DOI" value="10.17487/RFC9728"/>
        </reference>
        <reference anchor="I-D.skyfire-oauth-kyapay-token">
          <front>
            <title>KYAPay Token</title>
            <author fullname="Ankit Agarwal" initials="A." surname="Agarwal">
              <organization>Skyfire Systems Inc.</organization>
            </author>
            <author fullname="Michael B. Jones" initials="M. B." surname="Jones">
              <organization>Self-Issued Consulting</organization>
            </author>
            <date day="1" month="October" year="2026"/>
            <abstract>
              <t>   This document defines a token format for agent identity and payment
   tokens in JSON Web Token (JWT) format.  Authorization servers and
   resource servers from different vendors can leverage this token
   format to consume identity and payment tokens in an interoperable
   manner.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-skyfire-oauth-kyapay-token-02"/>
        </reference>
        <reference anchor="I-D.ietf-oauth-client-id-metadata-document">
          <front>
            <title>OAuth Client ID Metadata Document</title>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <author fullname="Emelia Smith" initials="E." surname="Smith">
         </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This specification defines a mechanism through which an OAuth client
   can identify itself to authorization servers, without prior dynamic
   client registration or other existing registration.  This is through
   the usage of a URL as a client_id in an OAuth flow, where the URL
   refers to a document containing the necessary client metadata,
   enabling the authorization server to fetch the metadata about the
   client as needed.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-client-id-metadata-document-02"/>
        </reference>
        <reference anchor="I-D.ietf-oauth-identity-assertion-authz-grant">
          <front>
            <title>Identity Assertion JWT Authorization Grant</title>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <author fullname="Karl McGuinness" initials="K." surname="McGuinness">
              <organization>Independent</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <date day="30" month="October" year="2026"/>
            <abstract>
              <t>   This specification provides a mechanism for an application to use an
   identity assertion to obtain an access token for a third-party API by
   coordinating through an identity provider that the downstream
   Resource Authorization Server already trusts for single sign-on
   (SSO), using OAuth 2.0 Token Exchange (RFC 8693) and the JWT Profile
   for OAuth 2.0 Authorization Grants (RFC 7523).  This pattern is
   informally referred to as Cross-App Access (XAA).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-identity-assertion-authz-grant-06"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6749"/>
          <seriesInfo name="DOI" value="10.17487/RFC6749"/>
        </reference>
        <reference anchor="RFC6750">
          <front>
            <title>The OAuth 2.0 Authorization Framework: Bearer Token Usage</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>This specification describes how to use bearer tokens in HTTP requests to access OAuth 2.0 protected resources. Any party in possession of a bearer token (a "bearer") can use it to get access to the associated resources (without demonstrating possession of a cryptographic key). To prevent misuse, bearer tokens need to be protected from disclosure in storage and in transport. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6750"/>
          <seriesInfo name="DOI" value="10.17487/RFC6750"/>
        </reference>
        <reference anchor="RFC6755">
          <front>
            <title>An IETF URN Sub-Namespace for OAuth</title>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>This document establishes an IETF URN Sub-namespace for use with OAuth-related specifications. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6755"/>
          <seriesInfo name="DOI" value="10.17487/RFC6755"/>
        </reference>
        <reference anchor="RFC7523">
          <front>
            <title>JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification defines the use of a JSON Web Token (JWT) Bearer Token as a means for requesting an OAuth 2.0 access token as well as for client authentication.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7523"/>
          <seriesInfo name="DOI" value="10.17487/RFC7523"/>
        </reference>
        <reference anchor="RFC7591">
          <front>
            <title>OAuth 2.0 Dynamic Client Registration Protocol</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Machulak" initials="M." surname="Machulak"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <date month="July" year="2015"/>
            <abstract>
              <t>This specification defines mechanisms for dynamically registering OAuth 2.0 clients with authorization servers. Registration requests send a set of desired client metadata values to the authorization server. The resulting registration responses return a client identifier to use at the authorization server and the client metadata values registered for the client. The client can then use this registration information to communicate with the authorization server using the OAuth 2.0 protocol. This specification also defines a set of common client metadata fields and values for clients to use during registration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7591"/>
          <seriesInfo name="DOI" value="10.17487/RFC7591"/>
        </reference>
        <reference anchor="RFC9449">
          <front>
            <title>OAuth 2.0 Demonstrating Proof of Possession (DPoP)</title>
            <author fullname="D. Fett" initials="D." surname="Fett"/>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="D. Waite" initials="D." surname="Waite"/>
            <date month="September" year="2023"/>
            <abstract>
              <t>This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks with access and refresh tokens.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9449"/>
          <seriesInfo name="DOI" value="10.17487/RFC9449"/>
        </reference>
        <reference anchor="MCP" target="https://modelcontextprotocol.io/specification/2026-07-28">
          <front>
            <title>Model Context Protocol Specification</title>
            <author>
              <organization>Anthropic and the Model Context Protocol Contributors</organization>
            </author>
            <date year="2026" month="July"/>
          </front>
        </reference>
        <reference anchor="OpenID.Core" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>OpenID Connect Core 1.0 incorporating errata set 2</title>
            <author initials="N." surname="Sakimura" fullname="Nat Sakimura">
              <organization/>
            </author>
            <author initials="J." surname="Bradley" fullname="John Bradley">
              <organization/>
            </author>
            <author initials="M. B." surname="Jones" fullname="Michael B. Jones">
              <organization/>
            </author>
            <author initials="B. de" surname="Medeiros" fullname="Breno de Medeiros">
              <organization/>
            </author>
            <author initials="C." surname="Mortimore" fullname="Chuck Mortimore">
              <organization/>
            </author>
            <date year="2023" month="December" day="15"/>
          </front>
        </reference>
        <reference anchor="OpenID.Federation" target="https://openid.net/specs/openid-federation-1_0.html">
          <front>
            <title>OpenID Federation 1.0</title>
            <author initials="R." surname="Hedberg" fullname="Roland Hedberg">
              <organization/>
            </author>
            <author initials="M. B." surname="Jones" fullname="Michael B. Jones">
              <organization/>
            </author>
            <author initials="A. Å." surname="Solberg" fullname="Andreas Åkre Solberg">
              <organization/>
            </author>
            <author initials="J." surname="Bradley" fullname="John Bradley">
              <organization/>
            </author>
            <author initials="G. D." surname="Marco" fullname="Giuseppe De Marco">
              <organization/>
            </author>
            <author initials="V." surname="Dzhuvinov" fullname="Vladimir Dzhuvinov">
              <organization/>
            </author>
            <date year="2026" month="February"/>
          </front>
        </reference>
        <reference anchor="OpenID4VP" target="https://openid.net/specs/openid-4-verifiable-presentations-1_0.html">
          <front>
            <title>OpenID for Verifiable Presentations</title>
            <author initials="O." surname="Terbu" fullname="Oliver Terbu">
              <organization/>
            </author>
            <author initials="T." surname="Lodderstedt" fullname="Torsten Lodderstedt">
              <organization/>
            </author>
            <author initials="K." surname="Yasuda" fullname="Kristina Yasuda">
              <organization/>
            </author>
            <author initials="D." surname="Fett" fullname="Daniel Fett">
              <organization/>
            </author>
            <author initials="J." surname="Heenan" fullname="Joseph Heenan">
              <organization/>
            </author>
            <date year="2025" month="July"/>
          </front>
        </reference>
        <reference anchor="IANA.OAuth.Parameters" target="http://www.iana.org/assignments/oauth-parameters">
          <front>
            <title>OAuth Parameters</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
      </references>
    </references>
    <?line 516?>

<section numbered="false" anchor="document-history">
      <name>Document History</name>
      <t>[[ to be removed by the RFC Editor before publication as an RFC ]]</t>
      <t>-02</t>
      <ul spacing="normal">
        <li>
          <t>Reworked to use OAuth 2.0 Token Exchange <xref target="RFC8693"/>.
Both direct exchange of a KYAPay token for an access token
and token exchange for a client using CIMD are defined.</t>
        </li>
        <li>
          <t>Defined the <tt>urn:ietf:params:oauth:grant-profile:kyapay</tt> authorization grant profile
for authorization server and client metadata,
and the optional <tt>kyapay_issuers_supported</tt> authorization server metadata parameter.</t>
        </li>
        <li>
          <t>Registered the <tt>urn:ietf:params:oauth:token-type:kyapay</tt> token type,
the <tt>urn:ietf:params:oauth:grant-profile:kyapay</tt> grant profile,
and the <tt>kyapay_issuers_supported</tt> metadata parameter.</t>
        </li>
      </ul>
      <t>-01</t>
      <ul spacing="normal">
        <li>
          <t>Added Abhishek Hingnikar and Jeffrey Hickman as authors.</t>
        </li>
      </ul>
      <t>-00</t>
      <ul spacing="normal">
        <li>
          <t>Initial draft.</t>
        </li>
      </ul>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="A." surname="Safdari" fullname="Ammar Safdari">
        <organization>Skyfire Systems Inc.</organization>
        <address>
      </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
Tugb15n+Qa/A+x/R698TH0wAAA==

-->

</rfc>
