3.11 Tracking Payload
SData defines a standard tracking payload to allow a service consumer to monitor the progress of an asynchronous operation that it has initiated. The tracking payload is always associated with a 202 Accepted status code. It tells the client the operation has been accepted and is in progress. The contents of the tracking payload allows the consumer to feedback the operation’s progress to the user. For example by updating a progress bar.
Here is an example of SData tracking payload:
<tracking xmlns="http://schemas.sage.com/sdata/2008/1" > <phase>Archiving FY 2007</phase> <phaseDetail>Compressing file archive.dat</phaseDetail> <progress>12.0</progress> <elapsedSeconds>95</elapsedSeconds> <remainingSeconds>568</remainingSeconds> <pollingMillis>500</pollingMillis> </tracking>
The elements of the tracking payload are now described:
|phase||End user message describing the current phase of the operation.|
|phaseDetail||Detailed message for the progress within the current phase.|
|progress||Percentage of operation completed.|
|elapsedSeconds||Time elapsed since operation started, in seconds.|
|remainingSeconds||Expected remaining time, in seconds.|
|pollingMillis||Delay (in milliseconds) that the consumer should use before polling the service again.|
SData providers MAY expose asynchronous operations. If they do, they MUST use this tracking payload in their 202 responses.