[httpapi] Re: New draft: draft-rmili-httpapi-deprecation-manifest-00 (field-level deprecation signalling)
Sami Rmili <srmili@wiremind.io> Thu, 20 August 2026 09:24 UTC
Return-Path: <srmili@wiremind.io>
X-Original-To: httpapi@mail2.ietf.org
Delivered-To: httpapi@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 871B012CC89BF for <httpapi@mail2.ietf.org>; Thu, 20 Aug 2026 02:24:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1787217843; bh=yENqLuWLbmR0p5iQ0mojrqwjJwJ3ZqI1eR5H2nIRXB0=; h=References:In-Reply-To:From:Date:Subject:To; b=urEVMJ3KGsGm45Ngp6FWfRKWeI+C8qmUAGViUrnAGd3UkF6tQNOXShyjonxX6Tu3X Pxfd2+d9/K48iJL9VIVL21jh0uWebq0HKeNUy9+5Jr8CnZOuFI7DTgIR/qXhh7N4NK Tm2EIo4vP8DgseLoymgocoEkp/E0ZrtOBWsRqtbI=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.889
X-Spam-Level:
X-Spam-Status: No, score=-1.889 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01, URIBL_CSS_A=0.1] autolearn=unavailable autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=wiremind.io
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zJWm3euuUbGD for <httpapi@mail2.ietf.org>; Thu, 20 Aug 2026 02:24:02 -0700 (PDT)
Received: from mail-lj1-x22e.google.com (mail-lj1-x22e.google.com [IPv6:2a00:1450:4864:20::22e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id A9A6C12CC89B5 for <httpapi@ietf.org>; Thu, 20 Aug 2026 02:24:02 -0700 (PDT)
Received: by mail-lj1-x22e.google.com with SMTP id 38308e7fff4ca-39ca300db70so20807161fa.2 for <httpapi@ietf.org>; Thu, 20 Aug 2026 02:24:02 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1787217836; cv=none; d=google.com; s=arc-20260327; b=oLLEcZNlry74GpfZfvSpB8Zt9kWa4GQFp/XyQ9B0euwHVMubYHvwqhjT0o+X5hGJsL 9phPz3o4Al9wwB5FKA+lIRsRmi3I5+ZuTyPnQ7IE5nF+19vrwGE2AS7QmwIpAlIN5jUx QvqyA2sLxPNorFcm7KJSSqXDNXAKlJIdzgWXZ+ooFCoAg3pvuF1FTkYuNuCePnXmu9a7 oUpJuiTLv/bRDjd39K/eCCxxoEwfS0uvSKke3pogGh/Io0DValxSZBj9sNtLHgSaSFo9 Ko3Jx7OkWYHbxUE5838wyBjPbEM9Xvc0F7diwSc5ExQad/8QeYeUMkvzxJpjzr71FqMB ThVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=qfF7cr41WJhDacsHiNMAN8/Y3hPQMyCNBRpEAnV4kCM=; fh=7sSMZ5JRpfDmYEixg+K+ic08eNjHkcRiGZ8VpfwOTC4=; b=njq4QGCFdqZoSUEHksbuwED8Ahwmp+6ZuVaCnv+CKocPkJbLBHUkQeVteB5YDyzR72 xLkbcKn+qVhe1dGC/GT5sAvBgRfIXg3rceS57bBHl7aocWMVyCjWB47vDdIzQt9F0l3f F0wOMWDw1EMa8ijGYP9jq59dT5DpgSvbBHF24ivEj1nsXnCryAUk6UKljWviaOTg3ASK D7t8AV2aL8gFaDg2tGjM1FBIvQyQ9L7LERvkGPMOWrMZAG+h1rIWs+U/dushegw1fxOA GuKsX3bjXKIdGFoWB9UsSmmB0BrW5Un9AFhD3fqB8or845jzZCqB0WtcEsHwY21PIh/N LZ1w==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wiremind.io; s=google; t=1787217836; x=1787822636; darn=ietf.org; h=content-type:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=qfF7cr41WJhDacsHiNMAN8/Y3hPQMyCNBRpEAnV4kCM=; b=fUNe8xfEj8l6r9xCu/q9AMi5A63oQfcuFL9TPqpFaYawoBHQAaUWU5nGEQ3/+THUKQ FqaH68z4CAt8aF+30iT+3ILxCsCZkHYu50EGQoN0dW+lwuz8KFCVvuSLGPtiXKA5vWST yAU6XmefwIoZ4cUCMt+ioxh2425FJDsffKYb1AZRbOU+1P0E6qhipetUsILgqxmD6LF7 v+SvUDvewYwwYXH7w0vG7dXPez6/LiO7gu5mpFTnWpJB1fbnVtMyZHPrcpLxoItko7wJ ihivzIlxxi40Omg0w+y/dzpgssvY43FET3fwrMErNGN90idJdx5XNMjp0CaJs0syS5L6 BUzg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787217836; x=1787822636; h=content-type:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=qfF7cr41WJhDacsHiNMAN8/Y3hPQMyCNBRpEAnV4kCM=; b=HMiiF7g2Y/NagjxQeUr7KNXCVGhOAXQTkYXp7bU+7sIqoCDi60Rg5UomquSNsnhU6j cP18CeFaFWwP/HT1X1MBjcORdkJvcORepNLETlu82IzTzbnVVIDNT8re10EZKG8g4mMX E5eO3x8ZE98NEYNY8cPOH1Z/fKgMWWfqlSGe6BrH3WcOIpwgliyGftXRi6XBThf6djMa 9KpbfZa/RD99jIsiU1u2epfNOb0uS82g7UpTADOukhr9f2T+4WPkxogcqIyJAXfBPfXd cxj3dF1cD96fwoUY//9zTf6F0mAMVJT1vZQKd91tsVkGTW5QZYIN8ZZYw95AmyMM7tEO 4vNw==
X-Forwarded-Encrypted: i=1; AHgh+Rpbs/gX2OntHPmaVH7XTSY5aPj0kWHawAyzs2y0c+6zDxBF26n+/xXWaXy1DhGsu7M4zr/Cu0BL@ietf.org
X-Gm-Message-State: AOJu0YzMjXOPDMMDNiqZX7Fr2ewY5r26V8GlP81jP5UJN4s5C8V8d5AA AJMxvywGhDo9yyMyQ11Yr+88bS3nkrJUjsQfAZkzT2WFhVjvWdK7HWEWxjpKOk+nmRdbU4/a7xL RFNdgd32muyH1wtZi34CYgH8fZP9SgVMLah/I7zd41lZqwKm/BCaARq9+K2rZDja4rzGMSYWncx AVD7xQkz+i0saqoTkHwA==
X-Gm-Gg: AR+sD12sDKTQ/gmnOqq3hYETAw/+b9KJ9Vel+PSzfB2rNaviUyKCKH8jrURKKhRY4si 8fFWlzmKVF/wZlK5VpjW1N+iO3neOI6BQAV0gQIiTu9NaM7cB26Z4HPBUYLBd6heNDBjOu3vG6V VApVHBY5H6psOiSbh7anAhUvCbKOWO+ZrUrYd3L/Omdh3avVWcXHFmOuaOP89iQRM/kwF7sRR/p 2iPHQcQjvJWRNGF7z/GOtRxFXbkMeTHFNMGcJqAepKRXkJyRZaZXRz+2WeSWhw1gBJ/8BFkvUpg Y90fGXXMWAsGFSus0x5w2eilhxl5u8zNJurU/nLAXUB5
X-Received: by 2002:a05:651c:1542:b0:3a1:12e6:bbae with SMTP id 38308e7fff4ca-3a18945ccb5mr26372331fa.0.1787217835567; Thu, 20 Aug 2026 02:23:55 -0700 (PDT)
MIME-Version: 1.0
References: <CABSbMC6QcV5ewpJK7iYJ7PW6rc5muuVMaKYkngzfkedETnn8wA@mail.gmail.com> <MN2PR17MB40313CC7E2278184D8DC8D46CDA52@MN2PR17MB4031.namprd17.prod.outlook.com> <CABSbMC4G+P8jyA2X0iwQfB-QSKBdnuo8CA3_oBoeKOSsKh=ZxA@mail.gmail.com> <MN2PR17MB4031676BA2B1358F8386447ECDA52@MN2PR17MB4031.namprd17.prod.outlook.com>
In-Reply-To: <MN2PR17MB4031676BA2B1358F8386447ECDA52@MN2PR17MB4031.namprd17.prod.outlook.com>
From: Sami Rmili <srmili@wiremind.io>
Date: Thu, 20 Aug 2026 11:23:44 +0200
X-Gm-Features: AcwNN1XIgEQlTIQVKO9PkU6i_suOI5G2YSM1LBpl6hotP-8srdfXVE8Iyw22n-4
Message-ID: <CABSbMC6nVTU3NnHkNmaWy6j07=nhhbHe=oQEvW8-qm6gSd=vig@mail.gmail.com>
To: "Salz, Rich" <rsalz=40akamai.com@dmarc.ietf.org>, sanjay.dalal@cal.berkeley.edu, httpapi@ietf.org
Content-Type: multipart/alternative; boundary="00000000000039be51065977147f"
Message-ID-Hash: 7WWZCOB2XDR5AUKWHGBTR53DZ2P2TGS7
X-Message-ID-Hash: 7WWZCOB2XDR5AUKWHGBTR53DZ2P2TGS7
X-MailFrom: srmili@wiremind.io
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [httpapi] Re: New draft: draft-rmili-httpapi-deprecation-manifest-00 (field-level deprecation signalling)
List-Id: Building Blocks for HTTP APIs <httpapi.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/httpapi/lgod5NL9A7WQTfAdqIeHnL5XX3k>
List-Archive: <https://mailarchive.ietf.org/arch/browse/httpapi>
List-Help: <mailto:httpapi-request@ietf.org?subject=help>
List-Owner: <mailto:httpapi-owner@ietf.org>
List-Post: <mailto:httpapi@ietf.org>
List-Subscribe: <mailto:httpapi-join@ietf.org>
List-Unsubscribe: <mailto:httpapi-leave@ietf.org>
Rich, Sanjay, Rich, thanks for the welcome. I wrote -00 in kramdown-rfc but built it by hand, so I will set the draft up properly on i-d-template for -01, this is all very new to me. Sanjay, I'm excited to learn that this is of interest to you and I would love to collaborate on this topic. One clarification though: the Link does not point at the OpenAPI document. It points at the manifest, a small document discovered at runtime from the resource being called via rel="deprecation", which names the specific request or response member and gives its deprecation and sunset dates. Very happy to take a call on this, and a review whenever suits. Thanks, -- [image: img] *Sami RMILI* *Software Engineer* srmili@wiremind.io 16, boulevard Poissonnière - 75009 Paris, France [image: linkedin] <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-eFZMaExNZWZGQjMvaVVJaDArTTl6Zz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv6-KRotI$> [image: web] <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-VzNGNG5oU1pWYjZRMTVQMUxBZ2xJZz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv4Kwx0gO$> Le mer. 19 août 2026 à 19:39, Salz, Rich <rsalz=40akamai.com@dmarc.ietf.org> a écrit : > Thanks for the note, and (a) welcome to the IETF and (b) congrats on your > first draft. Looking at it, I assumed you used the i-d-template draft > tooling, which is really what I’d recommend anyway :) > > I assume that things crossed in the mail, and that you saw Sanjay’s reply > of being interested in this. > > > On 8/19/26, 12:02 PM, "Sami Rmili" <srmili=40wiremind.io@dmarc.ietf.org> > wrote: > > This Message Is From an External Sender > This message came from outside your organization. > > Hi Rich, > > As far as I know I'm the only person interested in it so far, no reviews > on-list. > > The need came out of our implementation of OSDM > <https://urldefense.com/v3/__https://osdm.io/spec/getting-started/__;!!GjvTz_vk!Ue9_FeePWR43sPxergtKlliFtwyksA2jW65QqCH54gBe446hhuzBauL532WFPNzV2fXcCwawNvl2T7hSDbOjhiG_fibK$> > (an open UIC rail-distribution API standard). The shared OpenAPI schema > marks fields deprecated between minor versions, but that flag carries no > dates and no single implementor can edit the shared schema to declare their > own deployment's timeline. Ans as far as I could find, there's no standard > way to say which field exactly is deprecated: RFC 9745 and RFC 8594 operate > at the granularity of a resource, not a member inside a request or response > body. That gap is the whole reason I wrote the draft. > > I'm actively trying to get OSDM to adopt this as we speak, so I do expect > there to be real interest behind it. In the meantime I'd be very glad of a > review of the draft. > I should say this is my first time writing an Internet-Draft, so pointers > on process are as welcome as technical comments. And I'm happy to explain > the need in more detail, over a call too if that would help. > > Thanks, > -- > > [image: img] > > *Sami RMILI* > *Software Engineer* > srmili@wiremind.io > > 16, boulevard Poissonnière - 75009 Paris, France > [image: linkedin] > <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-eFZMaExNZWZGQjMvaVVJaDArTTl6Zz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv6-KRotI$> [image: > web] > <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-VzNGNG5oU1pWYjZRMTVQMUxBZ2xJZz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv4Kwx0gO$> > > > Le mer. 19 août 2026 à 15:54, Salz, Rich <rsalz= > 40akamai.com@dmarc.ietf.org> a écrit : > > Has anyone reviewed or read this draft? > > Is anyone interested in working on it? > > On 6/29/26, 6:31 AM, "Sami Rmili" <srmili=40wiremind.io@dmarc.ietf.org> > wrote: > > Hi all, > > I've posted a -00 that I'd appreciate feedback on: > https://datatracker.ietf.org/doc/draft-rmili-httpapi-deprecation-manifest/ > <https://urldefense.com/v3/__https://datatracker.ietf.org/doc/draft-rmili-httpapi-deprecation-manifest/__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuvyiMrB3t$> > > *The gap:* > The Deprecation (RFC 9745) and Sunset (RFC 8594) header fields signal > lifecycle at the granularity of a resource. They cannot, by design, name an > individual member inside a JSON request or response body. The mechanisms > that can name a member, the deprecated keyword in OpenAPI and JSON Schema > are design-time, carry no dates, and live in a single shared description. > So an operator of a multi-party API spec has no standard way to say "on my > deployment, this particular field stops being accepted on this date." > > *The proposal:* > An *application/deprecations+json* document, a "*Deprecation Manifest*" > in which an operator declares dated deprecation and sunset timelines for > specific request/response members. It's discovered via the existing > *rel="deprecation"* link relation, is decoupled from any API description, > and is purely informational, it never changes the wire behaviour of a > resource. It reuses the date semantics of RFC 9745/8594 rather than > replacing them. > > *Origin:* > This comes from a real need as an implementor/contributor of OSDM > <https://urldefense.com/v3/__https://osdm.io/spec/getting-started/__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv2DClbZc$> > (an open UIC rail-distribution API standard). The OpenAPI schema is shared > by everyone who implements the standard, and it evolves: between two minor > versions, a field gets marked deprecated in favour of a replacement. But > that deprecated flag in the shared schema is undated, and no single > implementor can edit the shared schema to add their own dates. So even > though the standard says a field is on its way out, each operator is left > with no standard way to declare when their own deployment will stop > accepting or returning it (i.e. its actual deprecation and sunset dates). > The manifest lets each implementor publish that per-deployment timeline > without touching the shared contract. I expect to ship one in the OSDM > ecosystem, which should give the design some running code to evaluate. > > I'd particularly welcome views on whether this belongs as a discovery > document alongside RFC 9727 (api-catalog), and on the selector design > (JSONPath / JSON Pointer). > > Thanks, > -- > > [image: img] > > *Sami RMILI* > *Software Engineer* > srmili@wiremind.io > > 16, boulevard Poissonnière - 75009 Paris, France > [image: linkedin] > <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-eFZMaExNZWZGQjMvaVVJaDArTTl6Zz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv6-KRotI$> [image: > web] > <https://urldefense.com/v3/__https://app.signitic.com/l/bVhvSkNYYlBaZ1lLQi8vejdqMlF4QT09-VzNGNG5oU1pWYjZRMTVQMUxBZ2xJZz09__;!!GjvTz_vk!UdbCGJgUkIk6zVouXXg3arFQdsx9VxS6qAI5K2NyVwiMCi3noKsByWtkXCggKLw6g0Rra6xB9I7GiqalbOVuv4Kwx0gO$> > > The content of this email is confidential and intended for the recipient > specified in message only. > > > The content of this email is confidential and intended for the recipient > specified in message only. > -- The content of this email is confidential and intended for the recipient specified in message only.
- [httpapi] New draft: draft-rmili-httpapi-deprecat… Sami Rmili
- [httpapi] Re: New draft: draft-rmili-httpapi-depr… Salz, Rich
- [httpapi] Re: New draft: draft-rmili-httpapi-depr… Sanjay Dalal
- [httpapi] Re: New draft: draft-rmili-httpapi-depr… Sami Rmili
- [httpapi] Re: New draft: draft-rmili-httpapi-depr… swapnil srivastava
- [httpapi] Re: New draft: draft-rmili-httpapi-depr… Henry Andrews