§8.18.

FETCH_ERROR

A publisher sends a FETCH_ERROR control message in response to a failed FETCH.

FETCH_ERROR Message {
  Type (i) = 0x19,
  Length (16),
  Request ID (i),
  Error Code (i),
  Error Reason (Reason Phrase)
}
Figure 20: MOQT FETCH_ERROR Message
  • Request ID: The Request ID of the FETCH this message is replying to Section 8.7.

  • Error Code: Identifies an integer error code for fetch failure.

  • Error Reason: Provides the reason for fetch error. See Section 1.3.3.

The application SHOULD use a relevant error code in FETCH_ERROR, as defined below:

Table 7
Code Reason
0x0 Internal Error
0x1 Unauthorized
0x2 Timeout
0x3 Not Supported
0x4 Track Does Not Exist
0x5 Invalid Range
0x6 No Objects
0x7 Invalid Joining Request ID
0x8 Unknown Status in Range
0x9 Malformed Track
0x10 Malformed Auth Token
0x12 Expired Auth Token
  • Internal Error - An implementation specific or generic error occurred.

  • Unauthorized - The subscriber is not authorized to fetch from the given track.

  • Timeout - The fetch could not be completed before an implementation specific timeout. For example, a relay could not FETCH missing objects within the timeout.

  • Not supported - The endpoint does not support the FETCH method.

  • Track Does Not Exist - The requested track is not available at the publisher.

  • Invalid Range - The end of the requested range is earlier than the beginning, the start of the requested range is beyond the Largest Location, or the track has not published any Objects yet.

  • No Objects - No Objects exist between the requested Start and End Locations.

  • Invalid Joining Subscribe ID - The joining Fetch referenced a Request ID that did not belong to an active Subscription.

  • Unknown Status in Range - The requested range contains objects with unknown status.

  • Malformed Track - A relay publisher detected the track was malformed (see Section 2.5).

  • Malformed Auth Token - Invalid Auth Token serialization during registration (see Section 8.2.1.1).

  • Expired Auth Token - Authorization token has expired Section 8.2.1.1).

This is one section of the MoQT specification, rendered per-section for quick reference and citation. The authoritative text is draft-ietf-moq-transport-12 at the IETF.