<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC3339 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3339.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC7493 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7493.xml">
<!ENTITY RFC8259 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8259.xml">
<!ENTITY RFC8610 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8610.xml">
<!ENTITY RFC8615 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8615.xml">
<!ENTITY RFC8927 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8927.xml">
<!ENTITY RFC3986 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3986.xml">
<!ENTITY RFC9110 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9110.xml">
<!ENTITY RFC9111 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9111.xml">
<!ENTITY RFC9547 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9547.xml">
<!ENTITY RFC7326 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7326.xml">
<!ENTITY RFC7033 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7033.xml">
]>


<rfc ipr="trust200902" docName="draft-besleaga-sustainability-wellknown-02" category="info" submissionType="independent">
  <front>
    <title abbrev="Sustainability Well-Known URI">The 'sustainability' Well-Known URI</title>

    <author initials="A. N." surname="Besleaga" fullname="Andrei Nicolae BESLEAGA">
      <organization>Independent</organization>
      <address>
        <email>andrei.besleaga@ieee.org</email>
      </address>
    </author>

    <date year="2026" month="July" day="03"/>

    
    
    <keyword>Internet-Draft</keyword> <keyword>Sustainability</keyword> <keyword>Carbon Accounting</keyword> <keyword>Well-Known URI</keyword> <keyword>Energy Efficiency</keyword>

    <abstract>


<?line 73?>

<t>This document defines the "sustainability" well-known URI. This URI provides a uniform, out-of-band convention for web servers and digital services to publish their aggregated environmental impact, energy consumption, and carbon footprint metrics.</t>

<t>By utilizing an asynchronous reporting model, this approach allows for transparent environmental accounting without the bandwidth and energy overhead associated with per-request HTTP headers.</t>



    </abstract>



  </front>

  <middle>


<?line 79?>

<section anchor="introduction"><name>Introduction</name>

<t>The digital economy consumes a significant and growing percentage of global electricity. Emerging regulatory frameworks, such as the EU Corporate Sustainability Reporting Directive (CSRD) <xref target="EU-CSRD"/>, as well as industry standards like the Green Software Foundation's Software Carbon Intensity <xref target="GSF-SCI"/> and the W3C Web Sustainability Guidelines <xref target="W3C-WSG"/>, increasingly require organizations to disclose the environmental impact of their digital services.</t>

<t>These transparency efforts align with the United Nations 2030 Agenda for Sustainable Development <xref target="UN-SDG"/>, specifically supporting energy efficiency and sustainable infrastructure targets, encouraging companies to integrate sustainability information into their reporting cycles. The need for better data on the environmental impact of Internet systems, and the current gaps in that data, are documented in the report of the IAB Workshop on Environmental Impact of Internet Applications and Systems <xref target="RFC9547"/>.</t>

<t>While initial proposals for carbon transparency focused on per-request HTTP headers, such methods introduce a "rebound effect" where metadata increases the carbon footprint of the transaction. This document leverages <xref target="RFC8615"/> to define a <spanx style="verb">/.well-known/sustainability</spanx> URI for out-of-band reporting. This out-of-band mechanism allows servers to publish periodic, aggregated metrics, enabling workflows where environmental impact is a primary constraint alongside cost and performance.</t>

<t>This document continues and replaces draft-besleaga-green-sustainability-wellknown. The rename reflects that this is an individual Independent Submission and is not scoped to any IETF Working Group. The field set and wire format are unchanged from that document; schema version 1.1 (which introduced the optional <spanx style="verb">disclosure-uri</spanx> field) is used as the default, and this revision adds only clarifications, which are summarized in the Changelog.</t>

<section anchor="requirements-language"><name>Requirements Language</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" 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>

</section>
<section anchor="goals-and-non-goals"><name>Goals and Non-Goals</name>

<section anchor="goals"><name>Goals</name>
<t><list style="symbols">
  <t>Provide a single, discoverable location for environmental metrics for an origin.</t>
  <t>Define a minimal, machine-readable JSON structure, suitable for broad adoption.</t>
  <t>Ensure interoperability between clients and servers.</t>
  <t>Support alignment with GHG Protocol, EU CSRD, and Digital Product Passports.</t>
  <t>Mitigate security and privacy risks associated with publishing the data (like hardware fingerprinting).</t>
</list></t>

</section>
<section anchor="non-goals"><name>Non-Goals</name>
<t><list style="symbols">
  <t>This document does not mandate a specific calculation or measurement methodology.</t>
  <t>It does not define the verification, validation, certificates, or attestation mechanisms for the data itself, though it provides links to external attestations.</t>
  <t>It does not replace domain-specific reporting standards; it defines discovery and semantics and provides a discovery surface for linking to authoritative reports.</t>
</list></t>

</section>
</section>
<section anchor="relationship-to-other-work"><name>Relationship to Other Work</name>

<t>This document specifies an application-layer discovery mechanism for aggregated, origin-level environmental metrics. It defines discovery and data semantics only, over HTTP <xref target="RFC9110"/>, and does not profile or constrain the underlying measurement methodology.</t>

<t>In particular, it does not define, profile, or update network-equipment energy metrics, YANG data models, or network-domain energy monitoring and capability discovery. Such work is the subject of the IETF GREEN Working Group and, earlier, of the EMAN framework <xref target="RFC7326"/>; the GREEN charter explicitly excludes carbon accounting and reporting. This document therefore does not overlap with, update, or obsolete any IETF-stream document, and is complementary to that network-layer work. Sustainability at the level of the Internet as a whole is also a topic of research in the IRTF (for example, the Sustainability and the Internet Research Group), which defers protocol standardization to the IETF; this document is an individual Independent Submission and is not a product of, nor endorsed by, any IETF Working Group or IRTF Research Group.</t>

<t>This document complements existing disclosure conventions rather than replacing them. In particular, the Green Web Foundation carbon.txt convention <xref target="CARBON-TXT"/> is a TOML index that links an origin to its published sustainability disclosures (reports, certificates, and hosting or energy-source evidence); it records <em>where</em> an origin's disclosures live. The "sustainability" well-known URI instead publishes the <em>numeric metrics themselves</em> in JSON. The two compose: a Sustainability Metadata Document MAY link to a carbon.txt file through the optional <spanx style="verb">disclosure-uri</spanx> field, and a carbon.txt file MAY list the <spanx style="verb">/.well-known/sustainability</spanx> endpoint among an origin's disclosures.</t>

</section>
</section>
<section anchor="the-sustainability-well-known-uri"><name>The "sustainability" Well-Known URI</name>

<section anchor="uri-definition"><name>URI Definition</name>

<t>This document defines the "sustainability" well-known URI and requests its registration in the "Well-Known URIs" registry (see the IANA Considerations section). A client requests metrics by issuing an HTTP GET (or HEAD) request. When published, the metadata MUST be located at the path <spanx style="verb">/.well-known/sustainability</spanx> on the origin.</t>

<t><list style="symbols">
  <t><strong>Origin</strong>: The combination of scheme, host, and optional port (e.g., <spanx style="verb">https://example.com</spanx>).</t>
  <t><strong>Sustainability Metadata Document</strong>: The JSON document returned from <spanx style="verb">/.well-known/sustainability</spanx>.</t>
  <t><strong>Provider</strong>: The entity operating the origin and publishing the sustainability metadata.</t>
</list></t>

</section>
<section anchor="mandatory-minimum-supported-service"><name>Mandatory Minimum Supported Service</name>

<t>The resource SHOULD be served over HTTPS. The HTTP methods, status codes, and header fields used in this document are defined in HTTP Semantics <xref target="RFC9110"/>. A <spanx style="verb">GET</spanx> request MUST receive a <spanx style="verb">200 OK</spanx> with a JSON body when metadata is available; a <spanx style="verb">HEAD</spanx> request receives the same status and headers with no message body. If no metadata is published, servers SHOULD respond with <spanx style="verb">404 Not Found</spanx>. A request using any method other than <spanx style="verb">GET</spanx> or <spanx style="verb">HEAD</spanx> SHOULD receive <spanx style="verb">405 Method Not Allowed</spanx> with an <spanx style="verb">Allow: GET, HEAD</spanx> header (<xref target="RFC9110"/>, Section 15.5.6). Successful (<spanx style="verb">200 OK</spanx>) responses MUST use the <spanx style="verb">application/json</spanx> media type, SHOULD follow I-JSON <xref target="RFC7493"/> for maximum compatibility, and SHOULD include appropriate caching directives (see Operational Considerations). A server MAY redirect the well-known URI; clients that follow a redirect MUST attribute the returned metrics to the origin of the final response, and providers SHOULD NOT redirect to a different origin.</t>

<t>A compliant server MUST support the following "Basic" service level:</t>

<t><list style="symbols">
  <t><strong>No Parameters</strong>: Requests to the root URI with no query strings.</t>
  <t><strong>Scope</strong>: Metrics MUST represent the aggregate impact of the entire origin.</t>
  <t><strong>Default Period</strong>: The server MUST return the most recently completed reporting period it publishes; a full calendar month is RECOMMENDED.</t>
  <t><strong>Format</strong>: The server MUST return a single JSON object.</t>
</list></t>

</section>
<section anchor="optional-extended-query-parameters"><name>Optional Extended Query Parameters</name>

<t>Servers MAY support "Extended" capabilities via the following parameters:</t>

<t><list style="symbols">
  <t><strong>target</strong>: Scopes the metrics to a resource path prefix (e.g., <spanx style="verb">?target=/api/v1/search</spanx>), matched against the origin's resource paths; the value follows URI path syntax <xref target="RFC3986"/> with any reserved characters percent-encoded. Matching is byte-wise and case-sensitive, on complete path segments. A server that scopes a response to a requested <spanx style="verb">target</spanx> MUST include the <spanx style="verb">target-path</spanx> field echoing the matched prefix; the absence of <spanx style="verb">target-path</spanx> means the metrics are origin-wide. To avoid disclosing the existence of unpublished paths (see Security Considerations), servers SHOULD honor <spanx style="verb">target</spanx> only for a deliberately published set of path prefixes and respond identically (per the no-data rule below) for all other values.</t>
  <t><strong>period</strong>: Specifies the timeframe using one of the following calendar-date precision forms (only <spanx style="verb">YYYY-MM-DD</spanx> is an RFC 3339 <xref target="RFC3339"/> <spanx style="verb">full-date</spanx>):
  <list style="symbols">
      <t>Year: <spanx style="verb">YYYY</spanx> (e.g., 2025)</t>
      <t>Month: <spanx style="verb">YYYY-MM</spanx> (e.g., 2025-01)</t>
      <t>Day: <spanx style="verb">YYYY-MM-DD</spanx> (e.g., 2026-01-01)</t>
    </list>
Calendar periods are interpreted in UTC unless the methodology document states otherwise.</t>
  <t><strong>granularity</strong>: Defines the time "slices" within a period. This document defines the values <spanx style="verb">monthly</spanx> and <spanx style="verb">daily</spanx>; a server SHOULD ignore an unrecognized value or a granularity that is not finer than the requested period. When the granularity is finer than the period, the server SHOULD return an array of objects.</t>
</list></t>

<t>A <spanx style="verb">period</spanx> request without a (finer) <spanx style="verb">granularity</spanx> requests a single object covering exactly that period. If the server holds only finer-grained data for the requested period, it SHOULD either aggregate it into a single object (summing energy and carbon after conversion to a single declared unit) or respond per the no-data rule below; it MUST NOT return an array unless a <spanx style="verb">granularity</spanx> finer than the period was requested. For a requested period that has not yet completed, the server SHOULD report the completed portion to date.</t>

<t>Servers that do not support the Extended parameters MUST ignore any such parameters and return the Basic response, rather than failing the request. If a supported parameter carries a malformed value (for example, a <spanx style="verb">period</spanx> that is not a valid date), the server MAY respond with <spanx style="verb">400 Bad Request</spanx>, or ignore the offending parameter and process the remainder of the request. When a server supports the requested parameters but has no data for a valid requested <spanx style="verb">period</spanx> or <spanx style="verb">target</spanx>, it SHOULD respond with <spanx style="verb">404 Not Found</spanx>.</t>

</section>
<section anchor="payload-format-json-data-model"><name>Payload Format (JSON Data Model)</name>

<t>A successful response MUST return, with the media type <spanx style="verb">application/json</spanx>, either a single JSON object <xref target="RFC8259"/> or an array of such objects (an array is used to convey a trend, that is, several reporting periods). A single object is equivalent to a one-element array; clients MUST accept both forms and determine which was returned from the JSON top-level type.</t>

<t>In an array response, the entries MUST be sorted in ascending order of <spanx style="verb">reporting-period</spanx>, MUST NOT cover overlapping periods, and MUST share the same period precision and (where present) the same <spanx style="verb">target-path</spanx>; the same units SHOULD be used across all entries.</t>

<section anchor="mandatory-response-fields"><name>Mandatory Response Fields</name>
<t><list style="symbols">
  <t><strong>version</strong> (string): An informational label identifying the schema revision the publisher used to build this document (e.g., <spanx style="verb">"1.1"</spanx>). It is a human- and debugging-oriented hint only and carries no negotiation or conformance semantics. Clients MUST NOT reject a document, or alter processing, solely because of the value of this field, and MUST apply the "ignore unknown fields" rule (see Versioning and Extensibility) regardless of the value present.</t>
  <t><strong>updated</strong> (string, date-time): The timestamp (RFC 3339) when the document was last updated.</t>
  <t><strong>capabilities</strong> (string): A self-declared indicator of the service level reflected by this document. It MUST be either "basic" or "extended". "basic" denotes the minimal service, in which the response is expected to carry only the mandatory fields. "extended" denotes that extended capabilities apply, meaning that the Extended query parameters are supported and/or one or more optional fields are present. The value is determined per response and MAY, at the provider's discretion, reflect the overall server, an individual response, or a specific resource path (the <spanx style="verb">target</spanx>). A value of "extended" does not, by itself, guarantee support for any particular Extended parameter or optional field; clients determine actual support from the fields present and from the server's behavior. A response declaring <spanx style="verb">basic</spanx> SHOULD NOT include optional fields; if it nevertheless does, clients MUST process the document normally; the fields present take precedence over the label.</t>
  <t><strong>provider</strong> (string): Information about the provider publishing the metadata.</t>
  <t><strong>measurement-method</strong> (string): Short description or reference to the methodology used. This is a free-form string; the values <spanx style="verb">hardware-metered</spanx>, <spanx style="verb">hardware-estimated</spanx>, <spanx style="verb">cloud-billing</spanx>, and <spanx style="verb">third-party-modeled</spanx> are RECOMMENDED.</t>
  <t><strong>methodology-uri</strong> (string): Link to the full methodology specification (calculation methodology).</t>
  <t><strong>reporting-period</strong> (string): The timeframe covered by the object, expressed using the same <xref target="RFC3339"/> date formats as the <spanx style="verb">period</spanx> parameter (<spanx style="verb">YYYY</spanx>, <spanx style="verb">YYYY-MM</spanx>, or <spanx style="verb">YYYY-MM-DD</spanx>).</t>
  <t><strong>energy-consumption</strong> (numeric): A numerical value indicating the total energy consumed by the origin or resource during the reporting period.</t>
  <t><strong>energy-unit</strong> (string): A string indicating the unit of energy (MUST be one of: <spanx style="verb">Wh</spanx>, <spanx style="verb">kWh</spanx>, <spanx style="verb">MWh</spanx>, or <spanx style="verb">GWh</spanx>).</t>
  <t><strong>carbon-footprint</strong> (numeric): Total impact in grams of CO2 equivalent.</t>
  <t><strong>carbon-unit</strong> (string): A string indicating the unit of carbon measurement (MUST be one of: <spanx style="verb">gCO2e</spanx>, <spanx style="verb">kgCO2e</spanx>, or <spanx style="verb">mtCO2e</spanx>).</t>
</list></t>

<section anchor="unreported-numeric-metrics"><name>Unreported Numeric Metrics</name>

<t>All required members MUST be present so that the document is schema-valid. However, a required numeric metric is not always available for a given scope or period. To distinguish "not reported" from a genuine zero measurement, a negative value (for example, <spanx style="verb">-1</spanx>) in a required numeric field (namely <spanx style="verb">energy-consumption</spanx> or <spanx style="verb">carbon-footprint</spanx>) MUST be interpreted as "not reported" for that field, rather than as an actual negative measurement. The <spanx style="verb">carbon-footprint</spanx> reports gross emissions and is therefore non-negative; carbon removals, offsets, or net-negative accounting are out of scope for this field and, where applicable, are conveyed through the linked attestation or disclosure resources. A client encountering a negative required metric SHOULD treat the metric as unavailable and, where present, consult the <spanx style="verb">disclosure-uri</spanx> (or the <spanx style="verb">methodology-uri</spanx>) for authoritative or alternative reporting. The anti-fingerprinting noise described in the Privacy Considerations section MUST NOT be applied to a field carrying the "not reported" sentinel.</t>

<t>Optional numeric fields SHOULD simply be omitted when not reported; a negative value in an optional numeric field MUST likewise be interpreted as "not reported" (omission remains RECOMMENDED). Consumers that require a value not present (or marked unreported) in this document SHOULD look to the linked disclosure or reporting resources.</t>

<t>Publishing a document in which both <spanx style="verb">energy-consumption</spanx> and <spanx style="verb">carbon-footprint</spanx> are unreported is NOT RECOMMENDED unless the document includes a <spanx style="verb">disclosure-uri</spanx> or <spanx style="verb">verifiable-attestation-uri</spanx> pointing to where the metrics can be found; a document carrying neither measurements nor such a link conveys no information.</t>

</section>
</section>
<section anchor="optional-response-fields"><name>Optional Response Fields</name>

<t>The JSON object MAY contain the following OPTIONAL keys to align with the <xref target="GHG-PROTOCOL"/>, European Sustainability Reporting Standards (ESRS E1), other sustainability recommendations, and optional extended capabilities (a <spanx style="verb">capabilities</spanx> value of <spanx style="verb">extended</spanx> does not require every optional field to appear):</t>

<t><list style="symbols">
  <t><strong>target-path</strong> (string): The resource path requested as target.</t>
  <t><strong>carbon-accounting</strong> (string): "location-based" or "market-based" (following <xref target="GHG-PROTOCOL"/>).</t>
  <t><strong>scope-1</strong> (numeric): Estimated Scope 1 (direct) carbon emissions.</t>
  <t><strong>scope-2</strong> (numeric): Estimated Scope 2 (indirect/purchased energy) carbon emissions.</t>
  <t><strong>scope-3</strong> (numeric): Estimated Scope 3 (value chain) carbon emissions.</t>
  <t><strong>sci-score</strong> (numeric): Software Carbon Intensity (SCI) score <xref target="GSF-SCI"/>. If <spanx style="verb">sci-score</spanx> is present, <spanx style="verb">functional-unit</spanx> MUST also be present.</t>
  <t><strong>functional-unit</strong> (string): The functional unit to which per-unit metrics are expressed (e.g., "per-request", "per-user"); its precise meaning SHOULD be defined in the <spanx style="verb">methodology-uri</spanx> document.</t>
  <t><strong>carbon-intensity-gCO2-per-kWh</strong> (numeric): Weighted carbon intensity in grams CO2 per kWh.</t>
  <t><strong>estimated-annual-emissions-kgCO2</strong> (numeric): Estimated annual emissions attributable to the origin.</t>
  <t><strong>renewable-energy</strong> (numeric): Percentage (0-100) of energy from sustainable renewable sources.</t>
  <t><strong>verifiable-attestation-uri</strong> (string): Link pointing to a verifiable credential or attestation, to support independent verification of the published metrics.</t>
  <t><strong>disclosure-uri</strong> (string): URI of a machine-readable sustainability disclosure index for the origin, that is, a single document listing links to the origin's public sustainability disclosures (reports, certificates, hosting and energy-source evidence). The field is format-agnostic; the canonical example is a Green Web Foundation carbon.txt file <xref target="CARBON-TXT"/>, which is itself commonly published at <spanx style="verb">/carbon.txt</spanx> or <spanx style="verb">/.well-known/carbon.txt</spanx>. A <spanx style="verb">disclosure-uri</spanx> links to supporting evidence and MUST NOT be treated by clients as proof of the metrics in this document.</t>
</list></t>

<t>The <spanx style="verb">scope-1</spanx>, <spanx style="verb">scope-2</spanx>, and <spanx style="verb">scope-3</spanx> values are expressed in the unit given by <spanx style="verb">carbon-unit</spanx>; <spanx style="verb">sci-score</spanx> is expressed in grams of CO2e per the declared <spanx style="verb">functional-unit</spanx>.</t>

<t>Fields not defined in this specification MAY be present; clients MUST ignore any members they do not recognize.</t>

</section>
<section anchor="versioning-and-extensibility"><name>Versioning and Extensibility</name>

<t>This document is designed so that new fields can be introduced over time without breaking deployed clients and without requiring a revision of this specification.</t>

<t><list style="symbols">
  <t>Forward compatibility rests on a single rule: clients MUST ignore members they do not recognize. Because no field defined here is security-critical, silently ignoring an unknown member is safe. The formal schemas (CDDL and JTD) are correspondingly open and permit additional members.</t>
  <t>Interoperability does not depend on the <spanx style="verb">version</spanx> member. As stated in its definition, <spanx style="verb">version</spanx> is an informational label; clients MUST NOT reject a document, or change their processing, because of an unrecognized <spanx style="verb">version</spanx> value.</t>
  <t>New fields may be introduced by a future specification, or privately by an implementer. To avoid collisions, vendor or private members SHOULD be namespaced, for example with a <spanx style="verb">vendor-</spanx> prefix, a domain-qualified name, or a URI key. Implementers introducing a field of general interest are encouraged to publish its definition so that others can interoperate.</t>
  <t>The values <spanx style="verb">"1.0"</spanx> and <spanx style="verb">"1.1"</spanx> denote historical schema revisions; <spanx style="verb">1.1</spanx> added the optional <spanx style="verb">disclosure-uri</spanx> field. Documents declaring either value remain valid, and introducing further fields does not, by itself, require a new <spanx style="verb">version</spanx> value.</t>
</list></t>

</section>
<section anchor="formal-definition-cddl"><name>Formal Definition (CDDL)</name>

<t>The following CDDL <xref target="RFC8610"/> describes the response:</t>

<figure><sourcecode type="cddl"><![CDATA[
; Root: a single object, or an array of objects for trends
sustainability-response =
  sustainability-metrics / [* sustainability-metrics]

sustainability-metrics = {
  ; Versioning and provenance
  version: tstr,
  updated: tstr,
  provider: tstr,

  capabilities: "basic" / "extended",

  ; Mandatory methodology disclosure
  measurement-method: tstr,
  methodology-uri: tstr,

  ; Timeframe of the report (RFC3339 formatted string)
  reporting-period: tstr,

  ; Energy units are fixed literals to ensure interoperability
  ; A negative required metric (e.g. -1) means "not reported"
  energy-consumption: number,
  energy-unit: "Wh" / "kWh" / "MWh" / "GWh",

  ; Carbon metrics (negative value = not reported)
  carbon-footprint: number,
  carbon-unit: "gCO2e" / "kgCO2e" / "mtCO2e",

  ; Optional fields for extended capabilities
  ? carbon-accounting: "location-based" / "market-based",
  ? target-path: tstr,
  ? scope-1: number,
  ? scope-2: number,
  ? scope-3: number,
  ? sci-score: number,
  ? functional-unit: tstr,
  ? carbon-intensity-gCO2-per-kWh: number,
  ? estimated-annual-emissions-kgCO2: number,
  ? renewable-energy: number,       ; percentage, 0-100
  ? verifiable-attestation-uri: tstr,
  ? disclosure-uri: tstr,

  ; Vendor extensions; clients MUST ignore unknown members
  * tstr => any
}
]]></sourcecode></figure>

</section>
<section anchor="formal-definition-jtd"><name>Formal Definition (JTD)</name>

<t>The following JSON Type Definition <xref target="RFC8927"/> defines the reporting object:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "properties": {
    "version": { "type": "string" },
    "updated": { "type": "string" },
    "capabilities": { "enum": ["basic", "extended"] },
    "provider": { "type": "string" },
    "measurement-method": { "type": "string" },
    "methodology-uri": { "type": "string" },
    "reporting-period": { "type": "string" },
    "energy-consumption": { "type": "float64" },
    "energy-unit": { "enum": ["Wh", "kWh", "MWh", "GWh"] },
    "carbon-footprint": { "type": "float64" },
    "carbon-unit": { "enum": ["gCO2e", "kgCO2e", "mtCO2e"] }
  },
  "optionalProperties": {
    "target-path": { "type": "string" },
    "carbon-accounting": {
      "enum": ["location-based", "market-based"]
    },
    "scope-1": { "type": "float64" },
    "scope-2": { "type": "float64" },
    "scope-3": { "type": "float64" },
    "sci-score": { "type": "float64" },
    "functional-unit": { "type": "string" },
    "carbon-intensity-gCO2-per-kWh": { "type": "float64" },
    "estimated-annual-emissions-kgCO2": { "type": "float64" },
    "renewable-energy": { "type": "float64" },
    "verifiable-attestation-uri": { "type": "string" },
    "disclosure-uri": { "type": "string" }
  },
  "additionalProperties": true
}
]]></sourcecode></figure>

</section>
</section>
</section>
<section anchor="example-usage"><name>Example Usage</name>

<section anchor="basic-response-root-request"><name>Basic Response (Root Request)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability</spanx></t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "1.1",
  "updated": "2026-03-01T12:00:00Z",
  "capabilities": "basic",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/sustainability",
  "reporting-period": "2026-02",
  "energy-consumption": 1250,
  "energy-unit": "kWh",
  "carbon-footprint": 345000,
  "carbon-unit": "gCO2e"
}
]]></sourcecode></figure>

</section>
<section anchor="yearly-trend-monthly-granularity"><name>Yearly Trend (Monthly Granularity)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability?period=2025&amp;granularity=monthly</spanx></t>

<t>The response is an array with one object per month; only the first two months are shown here for brevity.</t>

<figure><sourcecode type="json"><![CDATA[
[
  {
    "version": "1.1",
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-01",
    "energy-consumption": 1100,
    "energy-unit": "kWh",
    "carbon-footprint": 302,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 45
  },
  {
    "version": "1.1",
    "updated": "2026-01-05T09:00:00Z",
    "capabilities": "extended",
    "provider": "CloudProvider Ops (ops@example.com)",
    "measurement-method": "hardware-metered",
    "methodology-uri": "https://example.com/methodology",
    "reporting-period": "2025-02",
    "energy-consumption": 1050,
    "energy-unit": "kWh",
    "carbon-footprint": 288,
    "carbon-unit": "kgCO2e",
    "carbon-accounting": "location-based",
    "renewable-energy": 48
  }
]
]]></sourcecode></figure>

</section>
<section anchor="target-specific-request-day-period"><name>Target-Specific Request (Day Period)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability?target=/api/v1&amp;period=2026-03-15</spanx></t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "1.1",
  "updated": "2026-03-16T12:00:00Z",
  "capabilities": "extended",
  "target-path": "/api/v1",
  "reporting-period": "2026-03-15",
  "provider": "Example Corp (sustain@example.org)",
  "measurement-method": "cloud-billing",
  "methodology-uri": "https://example.com/sustainability",
  "energy-consumption": 40,
  "energy-unit": "kWh",
  "carbon-footprint": 11040,
  "carbon-unit": "gCO2e"
}
]]></sourcecode></figure>

</section>
<section anchor="target-specific-yearly-trend-monthly-granularity"><name>Target-Specific Yearly Trend (Monthly Granularity)</name>

<t>Request: <spanx style="verb">GET /.well-known/sustainability?target=/api/v1&amp;period=2026&amp;granularity=monthly</spanx></t>

<t>As above, the array holds one object per month; only the first two are shown for brevity.</t>

<figure><sourcecode type="json"><![CDATA[
[
  {
    "version": "1.1",
    "updated": "2026-03-21T07:00:00Z",
    "capabilities": "extended",
    "target-path": "/api/v1",
    "provider": "Example Corp (sustain@example.org)",
    "measurement-method": "third-party-modeled",
    "methodology-uri": "https://example.com/api-modeling",
    "reporting-period": "2026-01",
    "energy-consumption": 45,
    "energy-unit": "kWh",
    "carbon-footprint": 12450,
    "carbon-unit": "gCO2e",
    "sci-score": 12,
    "functional-unit": "per-thousand-requests"
  },
  {
    "version": "1.1",
    "updated": "2026-03-21T07:00:00Z",
    "capabilities": "extended",
    "target-path": "/api/v1",
    "provider": "Example Corp (sustain@example.org)",
    "measurement-method": "third-party-modeled",
    "methodology-uri": "https://example.com/api-modeling",
    "reporting-period": "2026-02",
    "energy-consumption": 42,
    "energy-unit": "kWh",
    "carbon-footprint": 11800,
    "carbon-unit": "gCO2e",
    "sci-score": 10,
    "functional-unit": "per-thousand-requests"
  }
]
]]></sourcecode></figure>

</section>
<section anchor="highly-detailed-combined-extended-request"><name>Highly Detailed Combined Extended Request</name>
<t>Request: <spanx style="verb">GET /.well-known/sustainability?target=/app/storage&amp;period=2026-03-20</spanx></t>

<t>This example utilizes almost all optional fields, including GHG Protocol Scopes and a verifiable attestation link to combat greenwashing.</t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "1.1",
  "updated": "2026-03-21T00:05:00Z",
  "capabilities": "extended",
  "provider": "Global Storage Inc. (compliance@storage.example)",
  "measurement-method": "hardware-estimated",
  "methodology-uri": "https://storage.example/transparency/methods",
  "reporting-period": "2026-03-20",
  "target-path": "/app/storage",
  "energy-consumption": 12,
  "energy-unit": "kWh",
  "carbon-footprint": 3.2,
  "carbon-unit": "kgCO2e",
  "carbon-accounting": "market-based",
  "scope-1": 0.0,
  "scope-2": 2.1,
  "scope-3": 1.1,
  "sci-score": 0.85,
  "functional-unit": "per-terabyte-day",
  "carbon-intensity-gCO2-per-kWh": 267,
  "estimated-annual-emissions-kgCO2": 1168,
  "renewable-energy": 45,
  "verifiable-attestation-uri": "https://verify.example/vc/storage",
  "disclosure-uri": "https://storage.example/.well-known/carbon.txt"
}
]]></sourcecode></figure>

</section>
<section anchor="unreported-metric-not-reported-sentinel"><name>Unreported Metric (Not-Reported Sentinel)</name>
<t>Request: <spanx style="verb">GET /.well-known/sustainability</spanx></t>

<t>In this example the provider has a carbon figure (for example, from a supplier or a CSRD report) but does not report energy. The required <spanx style="verb">energy-consumption</spanx> field is therefore set to the negative "not reported" sentinel (see "Unreported Numeric Metrics"), and the <spanx style="verb">disclosure-uri</spanx> points to where the missing data can be found.</t>

<figure><sourcecode type="json"><![CDATA[
{
  "version": "1.1",
  "updated": "2026-04-01T00:00:00Z",
  "capabilities": "extended",
  "provider": "Partial Metrics Co. (sustainability@partial.example)",
  "measurement-method": "third-party-modeled",
  "methodology-uri": "https://partial.example/methodology",
  "reporting-period": "2026-03",
  "energy-consumption": -1,
  "energy-unit": "kWh",
  "carbon-footprint": 4200,
  "carbon-unit": "gCO2e",
  "carbon-accounting": "location-based",
  "scope-2": 4200,
  "disclosure-uri": "https://partial.example/.well-known/carbon.txt"
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="operational-considerations"><name>Operational Considerations</name>

<section anchor="caching"><name>Caching</name>

<t>Because this endpoint can be dynamic, servers SHOULD implement heavy caching for the well-known responses (see also the rate-limiting guidance in the Security Considerations). HTTP caching and conditional requests are as defined in <xref target="RFC9111"/> and <xref target="RFC9110"/>.</t>

<t><list style="symbols">
  <t>Servers SHOULD set cache directives (e.g., <spanx style="verb">Cache-Control: max-age=86400</spanx>) <xref target="RFC9111"/>.</t>
  <t>For historical reports, a long <spanx style="verb">max-age</spanx> (e.g., one year) is RECOMMENDED.</t>
  <t>Use of <spanx style="verb">ETag</spanx> and <spanx style="verb">Last-Modified</spanx> (<xref target="RFC9110"/>, Sections 8.8.3 and 8.8.2), enabling conditional requests with <spanx style="verb">If-None-Match</spanx>, is RECOMMENDED.</t>
</list></t>

</section>
</section>
<section anchor="interoperability"><name>Interoperability</name>

<t>To maximize interoperability:</t>

<t><list style="symbols">
  <t>Servers SHOULD keep their published documents current with this specification.</t>
  <t>Clients MUST tolerate unknown fields and future versions.</t>
  <t>Implementers SHOULD publish example payloads and test vectors.</t>
  <t>Aggregators SHOULD document how they map provider fields to their internal models.</t>
</list></t>

</section>
<section anchor="deployment"><name>Deployment</name>

<t><list style="symbols">
  <t>For multi-tenant platforms, operators SHOULD decide whether to publish per-tenant metadata at the tenant origin or a platform-level summary.</t>
  <t>Operators deploying behind CDNs or reverse proxies MUST ensure that the <spanx style="verb">/.well-known/sustainability</spanx> path is routed to the authoritative publisher or proxied correctly.</t>
  <t>Automation: Providers SHOULD automate updates to the document to reflect changes in energy sourcing or measurement.</t>
</list></t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<section anchor="denial-of-service-dos"><name>Denial of Service (DoS)</name>

<t>Because this endpoint may require internal database queries to aggregate data - especially when dynamic period or other query parameters are utilized - it could become a vector for Denial of Service (DoS) attacks.
Dynamic aggregation of metrics for custom <spanx style="verb">period</spanx> parameters can be resource-intensive.</t>

<t><list style="symbols">
  <t>Servers SHOULD rate-limit requests to the sustainability URI and cache all generated reports.</t>
  <t>Because each distinct query-string combination is a distinct cache entry, an attacker iterating unique parameter values can bypass a response cache; honoring <spanx style="verb">target</spanx> only for a published set of path prefixes (see Optional Extended Query Parameters) bounds the key space, and servers SHOULD precompute reports rather than aggregate on demand.</t>
</list></t>

</section>
<section anchor="array-size-limits"><name>Array Size Limits</name>

<t>To prevent Denial of Service (DoS) via memory exhaustion, servers supporting <spanx style="verb">granularity</spanx> MUST limit the maximum number of objects returned.</t>

<t><list style="symbols">
  <t>A cap of 366 objects is RECOMMENDED.</t>
  <t>When a response would exceed the limit, the server SHOULD return the most recent periods and MAY signal the truncation (for example, via an extension member), or MAY respond with <spanx style="verb">400 Bad Request</spanx>.</t>
</list></t>

</section>
<section anchor="trust-and-spoofing"><name>Trust and Spoofing</name>

<t>Publishing sustainability metadata at a well-known location is convenient but does not provide any cryptographic assurance of correctness. An attacker who controls DNS, TLS certificates, or the origin can publish false metadata.</t>

<t><list style="symbols">
  <t>Clients MUST NOT treat the presence of a sustainability document as proof of any claim.</t>
  <t>For high-assurance use cases, clients SHOULD rely on additional attestations, signed statements, or third-party verification.</t>
</list></t>

</section>
<section anchor="greenwashing-and-misrepresentation"><name>Greenwashing and Misrepresentation</name>

<t>There is a risk that providers publish misleading or incomplete metrics to appear more sustainable.</t>

<t><list style="symbols">
  <t>Providers SHOULD include links to measurement methodologies, authoritative reports, signed statements, additional attestations, or third-party verification.</t>
  <t>Consumers SHOULD treat the document as a discovery mechanism and validate claims against external sources when necessary.</t>
  <t>Providers SHOULD include links to cryptographically signed W3C Verifiable Credentials in the <spanx style="verb">verifiable-attestation-uri</spanx> field to combat greenwashing.</t>
</list></t>

</section>
<section anchor="privacy-and-information-leakage"><name>Privacy and Information Leakage</name>

<t>Publishing detailed operational metrics may reveal sensitive information about infrastructure, traffic patterns, or deployment topology.</t>

<t><list style="symbols">
  <t>Providers SHOULD avoid publishing data that could be used to infer internal architecture or expose personally identifiable information.</t>
  <t>Aggregators SHOULD use privacy-preserving aggregation techniques when publishing derived datasets.</t>
</list></t>

</section>
<section anchor="integrity-and-transport-security"><name>Integrity and Transport Security</name>

<t><list style="symbols">
  <t>The resource SHOULD be served over HTTPS to protect integrity and privacy.</t>
  <t>Clients MUST validate TLS certificates according to standard practice.</t>
</list></t>

</section>
</section>
<section anchor="privacy-considerations"><name>Privacy Considerations</name>

<t>Publishing sustainability metadata can have privacy implications when metrics are correlated with traffic or user behavior. Providers SHOULD evaluate the privacy impact of any metric that could be linked to individual users or small groups. When in doubt, aggregate or redact fine-grained data.</t>

<section anchor="traffic-analysis"><name>Traffic Analysis</name>

<t>Servers SHOULD NOT report metrics at a granularity finer than 24 hours to prevent correlating energy spikes with specific real-time user actions. Real-time telemetry is NOT RECOMMENDED as it could allow an attacker to correlate energy usage with real-time actions.</t>

</section>
<section anchor="hardware-fingerprinting"><name>Hardware Fingerprinting</name>

<t>Precise metrics can reveal hardware architectures. Servers MAY apply "noise" (fuzzing), uniformly bounded within approximately 1% of the true values, to mitigate identification with limited impact on aggregate accuracy. Noise MUST be applied once, at document-generation time, deterministically per reporting period, and consistently across arithmetically related fields (so that, for example, scope values still sum to the reported <spanx style="verb">carbon-footprint</spanx>); the noised values are the published values for caching and conditional-request purposes. Providers applying noise SHOULD disclose this in the <spanx style="verb">methodology-uri</spanx> document so that auditors can reconcile published figures with filed reports.</t>

</section>
<section anchor="path-disclosure"><name>Path Disclosure</name>

<t>When <spanx style="verb">target</spanx> is honored for arbitrary values, the difference between a scoped response and a no-data response can reveal which resource paths exist and carry traffic on the origin. As specified in Optional Extended Query Parameters, servers SHOULD honor <spanx style="verb">target</spanx> only for a deliberately published set of path prefixes and respond identically for all other values.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>IANA is requested to register the "sustainability" well-known URI in the <eref target="https://www.iana.org/assignments/well-known-uris">"Well-Known URIs" registry</eref>, following the procedure outlined in <xref target="RFC8615"/>.
This registration enables interoperable discovery of sustainability metadata.</t>

<t>Following the registration template of <xref target="RFC8615"/>, Section 3.1:</t>

<t><list style="symbols">
  <t><strong>URI Suffix</strong>: sustainability</t>
  <t><strong>Change Controller</strong>: Andrei Nicolae Besleaga (andrei.besleaga@ieee.org)</t>
  <t><strong>Specification Document(s)</strong>: This document.</t>
  <t><strong>Status</strong>: provisional</t>
  <t><strong>Related Information</strong>: This suffix is used with the "http" and "https" URI schemes. The response uses the <spanx style="verb">application/json</spanx> media type <xref target="RFC8259"/> and SHOULD follow I-JSON <xref target="RFC7493"/>. Formal definitions of the response are provided in this document using CDDL <xref target="RFC8610"/> and JSON Type Definition (JTD) <xref target="RFC8927"/>.</t>
</list></t>

<t>A status of "provisional" is requested in keeping with <xref target="RFC8615"/>, Section 3.1: this is an Independent Submission rather than a Standards-Track or other open-standards-process document. Per that procedure, the designated expert(s) may promote the entry to "permanent" once it is found to be in broad use.</t>

<t>The single-token suffix "sustainability" is intentionally chosen: the metadata it names is site-wide (origin-level) rather than tied to a particular resource, which is the pattern for which well-known URIs are appropriate <xref target="RFC8615"/>. Resource-specific scoping is provided through the <spanx style="verb">target</spanx> query parameter rather than through additional path segments. The use of query parameters on a well-known URI follows existing practice such as WebFinger <xref target="RFC7033"/> and is permitted by <xref target="RFC8615"/>, Section 3. Registration is sought to enable interoperable discovery, not to signal endorsement of the publisher's claims.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>Thanks to the early reviewers and to members of the Internet sustainability community who provided feedback on sustainability metadata and discovery patterns.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">

&RFC2119;
&RFC3339;
&RFC8174;
&RFC7493;
&RFC8259;
&RFC8610;
&RFC8615;
&RFC8927;
&RFC3986;
&RFC9110;
&RFC9111;


    </references>

    <references title='Informative References' anchor="sec-informative-references">

<reference anchor="GHG-PROTOCOL" target="https://ghgprotocol.org/corporate-standard">
  <front>
    <title>The Greenhouse Gas Protocol: A Corporate Accounting and Reporting Standard (Revised Edition)</title>
    <author >
      <organization>World Resources Institute and World Business Council for Sustainable Development</organization>
    </author>
    <date year="2004"/>
  </front>
</reference>
<reference anchor="GSF-SCI" target="https://sci.greensoftware.foundation/">
  <front>
    <title>Software Carbon Intensity (SCI) Specification (standardized as ISO/IEC 21031:2024)</title>
    <author >
      <organization>Green Software Foundation</organization>
    </author>
    <date year="2024"/>
  </front>
</reference>
&RFC9547;
<reference anchor="EU-CSRD" target="https://eur-lex.europa.eu/eli/dir/2022/2464/oj">
  <front>
    <title>Directive (EU) 2022/2464 as regards corporate sustainability reporting (CSRD)</title>
    <author >
      <organization>European Parliament and Council</organization>
    </author>
    <date year="2022" month="December"/>
  </front>
</reference>
<reference anchor="UN-SDG" target="https://sdgs.un.org/2030agenda">
  <front>
    <title>Transforming our world: the 2030 Agenda for Sustainable Development</title>
    <author >
      <organization>United Nations</organization>
    </author>
    <date year="2015"/>
  </front>
</reference>
<reference anchor="W3C-WSG" target="https://w3c.github.io/sustainableweb-wsg/">
  <front>
    <title>Web Sustainability Guidelines (WSG) 1.0 (W3C Community Group Report)</title>
    <author >
      <organization>W3C Sustainable Web Design Community Group</organization>
    </author>
    <date year="2023"/>
  </front>
</reference>
<reference anchor="CARBON-TXT" target="https://carbontxt.org/">
  <front>
    <title>carbon.txt: A TOML convention for discovering an origin's sustainability disclosures</title>
    <author >
      <organization>Green Web Foundation</organization>
    </author>
    <date year="2026"/>
  </front>
</reference>
&RFC7326;
&RFC7033;


    </references>

</references>


<?line 598?>

<section anchor="changelog"><name>Changelog</name>

<ul empty="true"><li>
  <t>[Note to the RFC Editor: please remove this appendix before publication.]</t>
</li></ul>

<t>This appendix summarizes changes in recent revisions of this document, for the convenience of reviewers. The complete revision history, including the revisions published under the document's former name (draft-besleaga-green-sustainability-wellknown), is maintained in the project repository.</t>

<section anchor="since-01"><name>Since -01</name>

<t>This revision applies editorial and normative clarifications to improve interoperability and readiness for Independent-stream publication; no fields are added or removed, and all previously published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Aligned the formal schemas with the "clients MUST ignore unknown fields" rule: the CDDL map now permits vendor extensions (<spanx style="verb">* tstr =&gt; any</spanx>) and the JTD gains <spanx style="verb">"additionalProperties": true</spanx>, so a conformant validator no longer rejects the extensions the text permits.</t>
  <t>Corrected the date-format references: the <spanx style="verb">YYYY</spanx> and <spanx style="verb">YYYY-MM</spanx> forms are calendar-date precision forms, not RFC 3339 productions (RFC 3339 defines the <spanx style="verb">YYYY-MM-DD</spanx> <spanx style="verb">full-date</spanx>).</t>
  <t>Clarified HTTP method handling (<spanx style="verb">GET</spanx>/<spanx style="verb">HEAD</spanx>; other methods -&gt; <spanx style="verb">405</spanx> with <spanx style="verb">Allow</spanx>), the no-data response (<spanx style="verb">404</spanx>), the <spanx style="verb">granularity</spanx> value set, and malformed-parameter handling.</t>
  <t>Specified that <spanx style="verb">scope-1/2/3</spanx> are expressed in <spanx style="verb">carbon-unit</spanx> and <spanx style="verb">sci-score</spanx> in gCO2e per <spanx style="verb">functional-unit</spanx>; extended the not-reported sentinel to optional numeric fields; relaxed the Basic default period so annual-only reporters can comply; and normativized that a <spanx style="verb">basic</spanx> response omits optional fields.</t>
  <t>Defined <spanx style="verb">target</spanx> prefix-matching semantics and percent-encoding (RFC 3986, added as a normative reference).</t>
  <t>Added HTTP Semantics (RFC 9110) and HTTP Caching (RFC 9111) as normative references, since the document relies on HTTP methods, status codes (including <spanx style="verb">405</spanx>/<spanx style="verb">Allow</spanx>), conditional requests (<spanx style="verb">ETag</spanx>/<spanx style="verb">Last-Modified</spanx>/<spanx style="verb">If-None-Match</spanx>), and caching; cited them at the relevant points.</t>
  <t>Redefined the <spanx style="verb">version</spanx> member as an informational, non-negotiated label (clients MUST NOT reject or branch on it) and rewrote "Versioning and Extensibility" around the must-ignore rule, so that the specification accommodates future fields without a revision and without an in-band version-negotiation mechanism.</t>
  <t>Changed the requested IANA registry status from "permanent" to "provisional" (appropriate for an Independent Submission per RFC 8615, promotable once in broad use), and added a rationale for the single-token suffix and the query-parameter design (WebFinger precedent).</t>
  <t>Sharpened the "Relationship to Other Work" section to distinguish this application-layer, origin-level HTTP disclosure surface from network-layer energy work (IETF GREEN, EMAN/RFC 7326) and from IRTF research, and to state clearly that it complements, and does not duplicate, the Green Web Foundation carbon.txt convention; cited the IAB e-impact workshop report (RFC 9547) as motivating context.</t>
  <t>Clarified that a single object is equivalent to a one-element array and that clients MUST accept both response forms; array entries are sorted, non-overlapping, and of uniform precision and target.</t>
  <t>Interoperability hardening from pre-submission review: a <spanx style="verb">period</spanx> request without finer <spanx style="verb">granularity</spanx> yields a single (possibly aggregated) object; a server scoping a response to <spanx style="verb">target</spanx> echoes <spanx style="verb">target-path</spanx> (absence means origin-wide); <spanx style="verb">target</spanx> matching is byte-wise, case-sensitive, on complete path segments, against a published set of prefixes (also closing a path-disclosure oracle and bounding the cache key space); calendar periods are interpreted in UTC; incomplete periods report the completed portion; array truncation keeps the most recent periods; anti-fingerprinting noise is applied once at generation time, deterministically and consistently across related fields; <spanx style="verb">sci-score</spanx> requires <spanx style="verb">functional-unit</spanx>; a document with both required metrics unreported carries a disclosure link; redirect responses are attributed to the final origin.</t>
  <t>Reference precision: identified carbon.txt as a TOML index, W3C WSG as a Community Group Report, and SCI by its ISO/IEC 21031:2024 form.</t>
  <t>Corrected the arithmetic of the highly-detailed example (scopes now sum to the reported <spanx style="verb">carbon-footprint</spanx>).</t>
  <t>Revised the Acknowledgments to thank the Internet sustainability community generally, without implying review or endorsement by any IETF Working Group or IRTF Research Group.</t>
  <t>Numerous editorial fixes (typos, comma splices, heading hyphenation, host/origin terminology, <spanx style="verb">Acknowledgments</spanx> spelling, bare IANA URL). The pre-rename revision history was moved out of this appendix to the project repository.</t>
</list></t>

</section>
<section anchor="since-00"><name>Since -00</name>

<t>Editorial/positioning update only; no change to the data model, field semantics, service levels, or wire format, and all published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Replaced "standardized, out-of-band mechanism" with "uniform, out-of-band convention" in the Abstract, to reflect that this is an Informational document describing a common, interoperable convention (suited to the Independent Submission Stream and Research Group discussion) rather than a standards-track specification.</t>
</list></t>

</section>
<section anchor="draft-besleaga-sustainability-wellknown-00-replaces-draft-besleaga-green-sustainability-wellknown"><name>draft-besleaga-sustainability-wellknown-00 (replaces draft-besleaga-green-sustainability-wellknown)</name>

<t>This document is an administrative continuation of draft-besleaga-green-sustainability-wellknown, which it replaces. It makes no change to the field set or wire format; the previously published example payloads remain valid.</t>

<t><list style="symbols">
  <t>Renamed the document from <spanx style="verb">draft-besleaga-green-sustainability-wellknown</spanx> to <spanx style="verb">draft-besleaga-sustainability-wellknown</spanx> and recorded a "Replaces" relationship. The prior name's "green" token could imply a scope tied to the IETF GREEN Working Group; this is an individual Independent Submission with no working-group affiliation.</t>
  <t>Adopted schema version <spanx style="verb">1.1</spanx> as the default across all examples (version <spanx style="verb">1.1</spanx> introduced the optional <spanx style="verb">disclosure-uri</spanx> field; documents declaring <spanx style="verb">1.0</spanx> remain valid).</t>
  <t>Clarified the meaning of a negative value in a required numeric field: it denotes an unreported metric (not a real negative measurement); see "Unreported Numeric Metrics". Also noted that <spanx style="verb">carbon-footprint</spanx> is gross (non-negative) and that the anti-fingerprinting noise is not applied to the "not reported" sentinel.</t>
  <t>Editorial and clarity corrections for publication: the URI Definition now states that this document <em>requests</em> the registration (rather than asserting it is already registered); added a "Relationship to Other Work" note (application-layer scope; does not update or obsolete any IETF-stream document; complementary to carbon.txt); and specified that servers not supporting the Extended parameters MUST ignore them and return the Basic response.</t>
  <t>Data-model and example corrections: clarified the <spanx style="verb">capabilities</spanx> semantics (a simple <spanx style="verb">basic</spanx>/<spanx style="verb">extended</spanx> indicator that is determined per response and MAY reflect the server, the specific response, or a resource path) and corrected the Target-Specific example, which had declared <spanx style="verb">basic</spanx> while carrying an optional field (<spanx style="verb">target-path</spanx>) and had reused the whole-host totals for a sub-path; pinned <spanx style="verb">reporting-period</spanx> to the same date formats as the <spanx style="verb">period</spanx> parameter; noted that <spanx style="verb">measurement-method</spanx> is a free-form string with RECOMMENDED values; bounded <spanx style="verb">renewable-energy</spanx> to 0-100; documented malformed-parameter handling (<spanx style="verb">400</spanx> or ignore); and added a "Not-Reported Sentinel" example.</t>
</list></t>

<t>The revision history of the replaced document, the former draft-besleaga-green-sustainability-wellknown (its versions -00 through -05), is not reproduced here; it is retained in the project repository's CHANGELOG.</t>

</section>
</section>


  </back>

<!-- ##markdown-source:
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
1/7qburmkHot3H2FGkG8c1NyDidi0dgCRYJlcnld8b0oBDJJ+U+uiIvkubhr
pocLEtNFFOwRU6ylCAT5WqKLdr6KCWXh4VxTTpLEkl10POu6WErP1vfNap8p
/2glPclld/vy+IUrt8AZipRmLCn2lK3NVWiiO5tUwnoPByPme2lzSpW/1wrB
pnNZ3Hb3MeNl6pubOVzBw0NhQpUqpKWXrx5GR5sYS6RCZf/ozp7wc61ug8mL
hCM7q12IrTfFprlYiWsNOtIYrzTRzToiAGL4e3aDdl06+QjofCmz6vIklTds
BjOBs8dazluX2l1Osd5PUs38we5i216qeFYmZ9rI0Nei38zk0Y7ldElfvJSo
W0/EYuNBvqEMuEDwSuRud1gWO5POIPwYj41FfqiorkAEs35rrTwNCsQ/sESM
u8QvOZW0680qraK6mDTgGReIpDIWO2pEPlEWUir1PlUZFVRqVDg5JwabJ1ES
ay9sl+O4Jd1zW2ExXr2VHN1xdkgJ8JlikZ8pV+I6J6/pLYqJN3hiFYmOFXIO
QPp9WIVFWJd2icl/9tMczoYTeHVNwZ2CuCydXDlFzOACMlz5mHOfwoxKLVyF
nVqe4f1jYN3w88nLl+6Rbbks1c7cQT0StdhPEyu5rTTzgXqGtCZfS9dXluSa
MNQzEsBBrLoEW1bKU0RmEoIGAO4SrCSFqkvJo0/Xf+NTucM23VwBelUU96Qj
BtdZ99RCRzGShmqfawJF3UCw6wPd4o7stJX2kcpBgyw3q7qAE1vN6bI2MNNU
yqkKO8eWz32seOWo6HFOhdBQCavM5fVtz9y9ud1uOhSUpECqUmF4D6poWB2l
qUdgrrq/Rc43LXhB6dZtH1d1PbiaQrtapNnS64CzeeJ3tiZ6rsJCMg4lMLM/
D5P5wz5HPaMXMDAzn5Qk2aczrKLrVdLVK3ClMVZllSsRnbq+paVcH8LWVCyo
fYlshRyYpwubSv019PZpld+w0DH3G6PKSMEtNALzlhjW0jvuZtDuvkAZFcDf
1VVpJ0j2gu8grJ4Ft8m3agmEB53u7L2EkJUWWJaPv3I1m13XKu1uzvfoLd51
EM3qadBEhMJtQnnr2Dr1L96reuGu5FXu1uShC9/uyvBu1ytWTpRaBLjFsATR
G5t+pKSigE1M1VNdBGaoogfrMw+WioBJueio6ygXNYo7mvawoyW2P0V5hnDk
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

-->

</rfc>

