def post_data(self, path, data, content_type, **params):
params = jsonify_parameters(params)<EOL>url = ensure_trailing_slash(self.url + path.lstrip('<STR_LIT:/>'))<EOL>return self._json_request('<STR_LIT>', url,<EOL>params=params,<EOL>data=data,<EOL>headers={'<STR_LIT:Content-Type>': content_type}<EOL>)<EOL>
Make a POST request to the given path, with `data` in its body.
Return the JSON-decoded result.

The content_type must be set to reflect the kind of data being sent,
which is often `application/json`.

Keyword parameters will be converted to URL parameters. This is unlike
other POST requests which encode those parameters in the body, because
the body is already being used.

This is used by the Luminoso API to upload new documents in JSON
format.