@Override public RequestBody convert(CampaignSettings campaign) throws IOException { JsonObject obj = new JsonObject(); obj.add("type", new JsonPrimitive("regular")); JsonObject recipients = new JsonObject(); recipients.add("list_id", new JsonPrimitive(campaign.getListId())); obj.add("recipients", recipients); JsonObject settings = new JsonObject(); settings.add("subject_line", new JsonPrimitive(campaign.getSubjectLine())); settings.add("from_name", new JsonPrimitive(campaign.getFromName())); settings.add("reply_to", new JsonPrimitive(campaign.getReplyToEmail())); settings.add("auto_footer", new JsonPrimitive(true)); settings.add("inline_css", new JsonPrimitive(true)); obj.add("settings", settings); return RequestBody.create(MediaType.parse("application/json"), obj.getAsJsonObject().toString()); } }