Why is the version number required for Delete and Unpublish methods?

Hello,

I have a question about methods from Management API: DeleteEntry and UnpublishEntry. They both require the entry id and version number (methods signatures below).

In one of my use case, I don’t have the version number of the entry (I could query it). Since the description for the version parameter is “The last known version of the entry”. I tried to put version = 0 and both methods were still working.

I am glad that is allowed but my question is: why is the version number needed if we can put any values?

Methods:

Task DeleteEntry(string entryId, int version, string spaceId = null, CancellationToken cancellationToken = default(CancellationToken))
Task<Entry<dynamic>> UnpublishEntry(string entryId, int version, string spaceId = null, CancellationToken cancellationToken = default(CancellationToken))