Instance Property


The number of bytes that the task expects to send in the request body.


@property(readonly) int64_t countOfBytesExpectedToSend;


The URL loading system can determine the length of the upload data in three ways:

  • From the length of the data object provided as the upload body.

  • From the length of the file on disk provided as the upload body of an upload task (not a download task).

  • From the Content-Length in the request object, if you explicitly set it.

Otherwise, the value is NSURLSessionTransferSizeUnknown (-1) if you provided a stream or body data object, or zero (0) if you did not.

See Also

Obtaining Task Progress


A representation of the overall task progress.


The number of bytes that the task expects to receive in the response body.


The number of bytes that the task has received from the server in the response body.


The number of bytes that the task has sent to the server in the request body.


The total size of the transfer cannot be determined.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software