A method comprising: receiving, from a client device, a request for synchronization of file data, wherein the request comprises: identification that the request is generated using a particular file synchronization protocol, knowledge metadata including a compact representation of a version state that identifies file data associated with the client device, and a request for a uniform resource identifier that the client device can use to download the file data for synchronization; generating a change batch response for synchronization of the file data, wherein the change batch response comprises: identification that the change batch response is generated using the particular file synchronization protocol, identification of particular file data for synchronization, instructions for accessing the particular file data including at least one uniform resource identifier for access to the particular file data, and instructions indicating at least one data transport protocol to utilize to obtain the particular file data when accessed using the uniform resource identifier, wherein the instructions that indicate at least one data transport protocol further comprise an instruction to obtain first file data using a first data transport protocol, and an instruction to obtain second file data using a second data transport protocol that is different from the first data transport protocol; and transmitting the change batch response to the client device. receiving, from a client device, a request for synchronization of file data, wherein the request comprises: identification that the request is generated using a particular file synchronization protocol, knowledge metadata including a compact representation of a version state that identifies file data associated with the client device, and a request for a uniform resource identifier that the client device can use to download the file data for synchronization; identification that the request is generated using a particular file synchronization protocol, knowledge metadata including a compact representation of a version state that identifies file data associated with the client device, and a request for a uniform resource identifier that the client device can use to download the file data for synchronization; generating a change batch response for synchronization of the file data, wherein the change batch response comprises: identification that the change batch response is generated using the particular file synchronization protocol, identification of particular file data for synchronization, instructions for accessing the particular file data including at least one uniform resource identifier for access to the particular file data, and instructions indicating at least one data transport protocol to utilize to obtain the particular file data when accessed using the uniform resource identifier, wherein the instructions that indicate at least one data transport protocol further comprise an instruction to obtain first file data using a first data transport protocol, and an instruction to obtain second file data using a second data transport protocol that is different from the first data transport protocol; and transmitting the change batch response to the client device. identification that the change batch response is generated using the particular file synchronization protocol, identification of particular file data for synchronization, instructions for accessing the particular file data including at least one uniform resource identifier for access to the particular file data, and instructions indicating at least one data transport protocol to utilize to obtain the particular file data when accessed using the uniform resource identifier, wherein the instructions that indicate at least one data transport protocol further comprise an instruction to obtain first file data using a first data transport protocol, and an instruction to obtain second file data using a second data transport protocol that is different from the first data transport protocol; and transmitting the change batch response to the client device.