how to send HTTP Post request using jersey with a complex parameter <p>I need to send a HTTP Post to a REST API with the following complex type as parameters. I looked at the documentation of jersey and it helps only to send a key value pair. How can i send a HTTP Post request with the below parameters using jersey.</p> <pre><code>{ "key": "example key", "message": { "html": "&lt;p&gt;Example HTML content&lt;/p&gt;", "text": "Example text content", "subject": "example subject", "from_email": "message.from_email@example.com", "from_name": "Example Name", "to": [ { "email": "recipient.email@example.com", "name": "Recipient Name" } ], "headers": { "Reply-To": "message.reply@example.com" }, "important": false, "track_opens": null, "track_clicks": null, "auto_text": null, "auto_html": null, "inline_css": null, "url_strip_qs": null, "preserve_recipients": null, "view_content_link": null, "bcc_address": "message.bcc_address@example.com", "tracking_domain": null, "signing_domain": null, "return_path_domain": null, "merge": true, "global_merge_vars": [ { "name": "merge1", "content": "merge1 content" } ], "merge_vars": [ { "rcpt": "recipient.email@example.com", "vars": [ { "name": "merge2", "content": "merge2 content" } ] } ], "tags": [ "password-resets" ], "subaccount": "customer-123", "google_analytics_domains": [ "example.com" ], "google_analytics_campaign": "message.from_email@example.com", "metadata": { "website": "www.example.com" }, "recipient_metadata": [ { "rcpt": "recipient.email@example.com", "values": { "user_id": 123456 } } ], "attachments": [ { "type": "text/plain", "name": "myfile.txt", "content": "ZXhhbXBsZSBmaWxl" } ], "images": [ { "type": "image/png", "name": "IMAGECID", "content": "ZXhhbXBsZSBmaWxl" } ] }, "async": false, "ip_pool": "Main Pool", "send_at": "example send_at" } </code></pre> <p>I looked at the other questions of sending HTTP Post using Jersey and all I could find was a way to only send a <code>key\value</code> pairs as parameters and not complex string types like above.</p>