Send to API a document or a list of document.

        :param document: a document or a list of document.
        :type document: dict or list
        :return: Message with location of job
        :rtype: dict
        :raises ValidationError: if API returns status 400
        :raises Unauthorized: if API returns status 401
        :raises Forbidden: if API returns status 403
        :raises NotFound: if API returns status 404
        :raises ApiError: if API returns other status

def post(self, document):
        """Send to API a document or a list of document.

        :param document: a document or a list of document.
        :type document: dict or list
        :return: Message with location of job
        :rtype: dict
        :raises ValidationError: if API returns status 400
        :raises Unauthorized: if API returns status 401
        :raises Forbidden: if API returns status 403
        :raises NotFound: if API returns status 404
        :raises ApiError: if API returns other status
        """

        if type(document) is dict:
            document = [document]

        return self.make_request(method='POST', uri='updates/', data=document)