def upload(self, fp, token=None, target_name=None, content_type=None):
return UploadRequest(self).post(fp, token=token, target_name=target_name, content_type=content_type)<EOL>
Upload a file to Zendesk.

:param fp: file object, StringIO instance, content, or file path to be
           uploaded
:param token: upload token for uploading multiple files
:param target_name: name of the file inside Zendesk
:return: :class:`Upload` object containing a token and other information see
    Zendesk API `Reference <https://developer.zendesk.com/rest_api/docs/core/attachments#uploading-files>`__.