Accept-Datetime

The HTTP Accept-Datetime request header is included in an HTTP message to indicate that the client wants to retrieve a historical version of the resource.

Usage

The HTTP Accept-Datetime request header is a Content Negotiation process that is part of the Memento Framework. It is used by the client to tell the server that it wants a historical version of the original resource.

The Memento Framework provides a mechanism for Datetime negotiation, which is a variety of Content Negotiation. When the client specifies a Datetime preference, the server attempts to provide the memento that most closely matches the HTTP request.

TimeMap

The concept of a TimeMap is also defined by the Memento Framework. A TimeMap is a resource that provides a list of available Mementos. The idea is that the client can request a TimeMap and then use it to request a particular Memento.

Resolution

The resolution in terms of a specific Datetime being available depends on how many archives the server has. Depending on the date and the level of retention, the resource supplied may be significantly older or more recent than the date that had been supplied with the HTTP request.

Response

When the server responds, it will include the Memento-Datetime HTTP response header. This header indicates that the response contains a previous version of the resource, and includes the date that it was available.

Note

When a previous version of a resource is returned, it may not be identical to what will have to be returned on the actual date in question. There are several reasons for this including URI-rewriting that is typical of some web archivers, the addition of banners for branding, and format migration due to a particular digital migration strategy.

Takeaway

The Accept-Datetime request header is used by clients to request a previous version of the resource. This is part of the Memento Framework.

See also

Last updated: June 29, 2022