You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 7, 2025. It is now read-only.
Copy file name to clipboardExpand all lines: draft-ietf-httpapi-deprecation-header.md
+22-22Lines changed: 22 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -66,7 +66,7 @@ This specification uses the Augmented Backus-Naur Form (ABNF) notation of {{!RFC
66
66
67
67
The term "resource" is to be interpreted as defined in {{Section 2 of HTTP}}.
68
68
69
-
# The Deprecation HTTP Response Header
69
+
# The Deprecation HTTP Response Header Field
70
70
71
71
The `Deprecation` HTTP response header field allows a server to communicate to a client that the resource in context of the message is or will be deprecated.
72
72
@@ -97,7 +97,7 @@ Resources are free to define such an increased scope, and usually this scope wil
97
97
98
98
Using such an increased scope still may make sense, as deprecation information is only a hint anyway. It is optional information that cannot be depended on, and clients should always be implemented in ways that allow them to function without Deprecation information. Increased scope information may help clients to glean additional hints from related resources and, thus, might allow them to implement behavior that allows them to make educated guesses about resources becoming deprecated.
99
99
100
-
For example, an API might not use Deprecation headers on all of its resources, but only on designated resources such as the API's home document. This means that deprecation information is available, but in order to get it, clients have to periodically inspect the home document. In this example, the extended context of the Deprecation header would be all resources provided by the API, while the visibility of the information would only be on the home document.
100
+
For example, an API might not use Deprecation header fields on all of its resources, but only on designated resources such as the API's home document. This means that deprecation information is available, but in order to get it, clients have to periodically inspect the home document. In this example, the extended context of the Deprecation header field would be all resources provided by the API, while the visibility of the information would only be on the home document.
101
101
102
102
103
103
# The Deprecation Link Relation Type
@@ -109,14 +109,14 @@ This specification places no restrictions on the representation of the linked de
109
109
110
110
## Documentation
111
111
112
-
The purpose of the `Deprecation` header is to provide a hint about deprecation to the resource consumer. Upon reception of the `Deprecation` header, the client developer can look up the resource's documentation in order to find deprecation related information. The resource provider can provide a link to the resource documentation using a `Link` header with relation type `deprecation` as shown below:
112
+
The purpose of the `Deprecation` header field is to provide a hint about deprecation to the resource consumer. Upon reception of the `Deprecation` header field, the client developer can look up the resource's documentation in order to find deprecation related information. The resource provider can provide a link to the resource documentation using a `Link` header field with relation type `deprecation` as shown below:
In this example the linked content provides additional information about deprecation of the resource context. There is no Deprecation header field in the response, and thus the resource is not (yet) deprecated. However, the resource already exposes a link where information is available how deprecation is managed for the resource context. This may be documentation explaining the use of the Deprecation header field, and also explaining under which circumstances and with which policies (announcement before deprecation; continued operation after deprecation) deprecation might be happening.
118
118
119
-
The following example uses the same link header, but also announces a deprecation date using a Deprecation header field:
119
+
The following example uses the same link header field, but also announces a deprecation date using a Deprecation header field:
@@ -127,7 +127,7 @@ Given that the deprecation date is in the past, the linked information resource
127
127
128
128
# Sunset
129
129
130
-
In addition to the deprecation related information, if the resource provider wants to convey to the client application that the deprecated resource is expected to become unresponsive at a specific point in time, the Sunset HTTP header field {{?RFC8594}} can be used in addition to the `Deprecation` header.
130
+
In addition to the deprecation related information, if the resource provider wants to convey to the client application that the deprecated resource is expected to become unresponsive at a specific point in time, the Sunset HTTP header field {{?RFC8594}} can be used in addition to the `Deprecation` header field.
131
131
132
132
The timestamp given in the `Sunset` header field MUST NOT be earlier than the one given in the `Deprecation` header field.
133
133
@@ -142,9 +142,9 @@ The act of deprecation does not change any behavior of the resource. Deprecated
142
142
143
143
# IANA Considerations
144
144
145
-
## The Deprecation HTTP Response Header
145
+
## The Deprecation HTTP Response Header Field
146
146
147
-
The `Deprecation` response header should be added to the permanent registry of message header fields (see {{!RFC3864}}).
147
+
The `Deprecation` response header field should be added to the permanent registry of message header fields (see {{!RFC3864}}).
148
148
149
149
Header Field Name: Deprecation
150
150
@@ -158,7 +158,7 @@ The `Deprecation` response header should be added to the permanent registry of m
158
158
Change controller: IETF
159
159
160
160
Specification document: this specification,
161
-
Section 2 "The Deprecation HTTP Response Header"
161
+
Section 2 "The Deprecation HTTP Response Header Field"
162
162
163
163
164
164
@@ -191,23 +191,23 @@ other implementations may exist.
191
191
192
192
According to RFC 7942, "this will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature. It is up to the individual working groups to use this information as they see fit".
193
193
194
-
## Implementing the Deprecation Header
194
+
## Implementing the Deprecation Header Field
195
195
196
196
This is a list of implementations that implement the deprecation header field:
197
197
198
198
Organization: Apollo
199
199
200
-
- Description: Deprecation header is returned when deprecated functionality (as declared in the GraphQL schema) is accessed
200
+
- Description: Deprecation header field is returned when deprecated functionality (as declared in the GraphQL schema) is accessed
- Description: Deprecation header is incorporated in code generated by conjure-java, a CLI to generate Java POJOs and interfaces from Conjure API definitions
210
+
- Description: Deprecation header field is incorporated in code generated by conjure-java, a CLI to generate Java POJOs and interfaces from Conjure API definitions
* Description: Deprecation header is incorporated in Hesperides, a configuration management tool providing universal text file templating and properties editing through a REST API or a webapp.
220
+
* Description: Deprecation header field is incorporated in Hesperides, a configuration management tool providing universal text file templating and properties editing through a REST API or a webapp.
* Description: Core REST API of MediaWiki would use Deprecation header for endpoints that have been deprecated because a new endpoint provides the same or better functionality.
230
+
* Description: Core REST API of MediaWiki would use Deprecation header field for endpoints that have been deprecated because a new endpoint provides the same or better functionality.
@@ -268,14 +268,14 @@ The Deprecation header field SHOULD be treated as a hint, meaning that the resou
268
268
269
269
In cases where the Deprecation header field value is a date in the future, it can lead to information that otherwise might not be available. Therefore, applications consuming the resource SHOULD verify the resource documentation and if possible, consult the resource developer to discuss potential impact due to deprecation and plan for possible transition to recommended resource.
270
270
271
-
In cases where a `Link` header is used to provide documentation, one should assume that the content of the `Link` header field may not be secure, private or integrity-guaranteed, and due caution should be exercised when using it. Applications consuming the resource SHOULD check the referred resource documentation to verify authenticity and accuracy.
271
+
In cases where a `Link` header field is used to provide documentation, one should assume that the content of the `Link` header field may not be secure, private or integrity-guaranteed, and due caution should be exercised when using it. Applications consuming the resource SHOULD check the referred resource documentation to verify authenticity and accuracy.
272
272
273
273
274
274
# Examples
275
275
276
276
The following examples do not show complete HTTP interactions. They only show those HTTP header fields in a response that are relevant for resource deprecation.
277
277
278
-
The first example shows a deprecation header with date information:
278
+
The first example shows a deprecation header field with date information:
0 commit comments