Retrofit get request with nested json object
Create the following model classes,
public class ReferralRequestBody { @SerializedName("state") @Expose private String state; @SerializedName("filters") @Expose private Filters filters; public String getState() { return state; } public void setState(String state) { this.state = state; } public Filters getFilters() { return filters; } public void setFilters(Filters filters) { this.filters = filters; } }
Also, create this,
public class Filters { @SerializedName("page") @Expose private Integer page; @SerializedName("filter") @Expose private String filter; public Integer getPage() { return page; } public void setPage(Integer page) { this.page = page; } public String getFilter() { return filter; } public void setFilter(String filter) { this.filter = filter; } }
Then set the data for the state, filter like,
ReferralRequestBody referralrequestbody=new ReferralRequestBody();referralrequestbody.setState("state");Filters filters=new Filters();filters.setPage("page data");filters.setFilter("filter data");
and call the function as,
@GET("/api/data") Observable<APIResponse> getData( @Body ReferralRequestBody referralrequestbody);