The API cannot do anything useful with the default: either it should be a required argument, or else the method should do something sensible if it is not passed. E.g., one might crack the last element of the filename off and use that as a default key.