<?xml version="1.0" encoding="UTF-8"?>
<reference anchor="I-D.ratnawat-httpapi-async-problem-details" target="https://datatracker.ietf.org/doc/html/draft-ratnawat-httpapi-async-problem-details-00">
   <front>
      <title>Problem Details for Asynchronous Job Failures</title>
      <author initials="G." surname="Ratnawat" fullname="Gaurav Ratnawat">
         <organization>IMTF</organization>
      </author>
      <date month="March" day="1" year="2026" />
      <abstract>
	 <t>   HTTP APIs that process work asynchronously need a standard way to
   report job failures.  &quot;Problem Details for HTTP APIs&quot; (RFC 9457)
   provides the envelope; this document defines extension members that
   fill it with asynchronous-job-specific context.

   Eight extension members are specified: &quot;jobId&quot;, &quot;jobStatus&quot;,
   &quot;submittedAt&quot;, &quot;completedAt&quot;, &quot;retryable&quot;, &quot;retryAfter&quot;,
   &quot;processingStage&quot;, and &quot;correlationId&quot;.  A ninth member, &quot;results&quot;,
   supports batch operations.  Together they let a server describe which
   job failed, when, at what pipeline stage, and whether a retry is
   advisable -- in a single, machine-readable JSON (RFC 8259) object
   that works equally well in an HTTP response body, a message-broker
   payload, or a webhook callback.

   Although the primary motivation is structured error reporting for
   failed jobs, the extension members are equally useful for
   communicating successful job outcomes (e.g., a COMPLETED status with
   timing information).

   This document does NOT redefine how to submit, poll, or cancel
   asynchronous jobs; those mechanics are already covered by &quot;HTTP
   Semantics&quot; (RFC 9110) (202 Accepted), &quot;Prefer Header for HTTP&quot; (RFC
   7240) (respond-async), and emerging IETF work on long-running
   operations.  Instead, it focuses exclusively on the structured
   reporting gap that remains after a job reaches a terminal state.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ratnawat-httpapi-async-problem-details-00" />
   
</reference>
