@@ -350,7 +350,7 @@ The successful response includes the following content:
350350 },
351351 "mechanisms" : [" http-post-bytes" ],
352352 "session-token" : " <token-string>" ,
353- "valid-for " : 604800 ,
353+ "expires-at " : " 2025-08-01T12:00:00Z " ,
354354 "status" : " pending" ,
355355 "files" : {},
356356 "notices" : [
@@ -376,16 +376,14 @@ the following keys:
376376 that can be provided to installers in order to preview the staged release before it's published.
377377 If the index does *not * support stage previewing, this key **MUST ** be omitted.
378378
379- ``valid-for ``
380- An integer representing how long, in seconds, until the server itself will expire this session,
379+ ``expires-at ``
380+ An ISO8601 formatted timestamp string representing when the server will expire this session,
381381 and thus all of its content, including any uploaded files and the URL links related to the
382- session. This value is roughly relative to the time at which the session was created or
383- :ref: `extended <session-extension >`. The session **SHOULD ** live at least this much longer
382+ session. The session **SHOULD ** remain active until at least this time
384383 unless the client itself has canceled or published the session. Servers **MAY ** choose to
385- *increase * this time, but should never *decrease * it, except naturally through the passage of
386- time.
384+ extend this expiration time, but should never move it earlier.
387385 Clients can query the :ref: `session status <session-status >`
388- to get time remaining in the session.
386+ to get the current expiration time of the session.
389387
390388``status ``
391389 A string that contains one of ``pending ``, ``published ``, ``error ``, or ``canceled ``,
@@ -664,7 +662,7 @@ The successful response includes the following:
664662 "file-upload-session" : " ..."
665663 },
666664 "status" : " pending" ,
667- "valid-for " : 3600 ,
665+ "expires-at " : " 2025-08-01T13:00:00Z " ,
668666 "mechanism" : {
669667 "identifier" : " http-post-bytes" ,
670668 "file_url" : " ..." ,
@@ -682,6 +680,16 @@ the following keys:
682680 A dictionary mapping :ref: `keys to URLs <file-upload-session-links >` related to this session,
683681 the details of which are provided below.
684682
683+ ``status ``
684+ A string with valid values ``pending ``, ``processing ``, ``complete ``, ``error ``, and ``canceled ``
685+ indicating the current state of the File Upload Session.
686+
687+ ``expires-at ``
688+ An ISO8601 formatted timestamp string representing when the server will expire this File Upload Session.
689+ The session **SHOULD ** remain active until at least this time
690+ unless the client cancels or completes it. Servers **MAY ** choose to
691+ extend this expiration time, but should never move it earlier.
692+
685693``mechanism ``
686694 A mapping containing the necessary details for the supported mechanism
687695 as negotiated by the client and server.
@@ -794,7 +802,7 @@ The server will respond to this ``GET`` request with the same
794802:ref: `Publishing Session creation response body <publishing-session-response >`
795803or :ref: `File Upload Session creation response body <file-upload-session-response >`,
796804that they got when they initially created the Publishing Session or File Upload Session,
797- except with any changes to ``status ``, ``valid-for ``, or ``files `` reflected.
805+ except with any changes to ``status ``, ``expires-at ``, or ``files `` reflected.
798806
799807
800808.. _session-extension :
@@ -829,11 +837,11 @@ will respond with the same
829837:ref: `Publishing Session creation response body <publishing-session-response >`
830838or :ref: `File Upload Session creation response body <file-upload-session-response >`,
831839that they got when they initially created the Publishing Session or File Upload Session,
832- except with any changes to ``status ``, ``valid-for ``, or ``files `` reflected.
840+ except with any changes to ``status ``, ``expires-at ``, or ``files `` reflected.
833841
834842If the server refuses to extend the session for the requested number of seconds, it still returns a
835- success response, and the ``valid-for `` key will simply include the number of seconds remaining in
836- the current session.
843+ success response, and the ``expires-at `` key will simply reflect the current expiration time of
844+ the session.
837845
838846.. _staged-preview :
839847
0 commit comments