Skip to content

Commit 590ea40

Browse files
authored
Merge pull request #268 from caionovaes/feature-user-related-info
Implemented model and method for getting user related information and updated README
2 parents 3378232 + b4d71f0 commit 590ea40

File tree

3 files changed

+135
-0
lines changed

3 files changed

+135
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ Here is the status of the various API components:
5555
* [Ticket Forms](http://developer.zendesk.com/documentation/rest_api/ticket_forms.html) *getTicketForm() and getTicketForms()*
5656
* [Views](http://developer.zendesk.com/documentation/rest_api/views.html)
5757
* [Users](http://developer.zendesk.com/documentation/rest_api/users.html)
58+
* [User Related Information](https://developer.zendesk.com/rest_api/docs/core/users#user-related-information)
5859
* [User Fields](https://developer.zendesk.com/rest_api/docs/core/user_fields.html) - Partial - List User Fields (`getUserField()`)
5960
* [Requests](http://developer.zendesk.com/documentation/rest_api/requests.html)
6061
* [User Identities](http://developer.zendesk.com/documentation/rest_api/user_identities.html)

src/main/java/org/zendesk/client/v2/Zendesk.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
import org.zendesk.client.v2.model.TwitterMonitor;
5353
import org.zendesk.client.v2.model.User;
5454
import org.zendesk.client.v2.model.UserField;
55+
import org.zendesk.client.v2.model.UserRelatedInfo;
5556
import org.zendesk.client.v2.model.hc.Article;
5657
import org.zendesk.client.v2.model.hc.ArticleAttachments;
5758
import org.zendesk.client.v2.model.hc.Category;
@@ -451,6 +452,11 @@ public Iterable<Ticket> getUserCCDTickets(long userId) {
451452
handleList(Ticket.class, "tickets"));
452453
}
453454

455+
public UserRelatedInfo getUserRelatedInfo(long userId) {
456+
return complete(submit(req("GET", tmpl("/users/{userId}/related.json").set("userId", userId)),
457+
handle(UserRelatedInfo.class, "user_related")));
458+
}
459+
454460
public Iterable<Metric> getTicketMetrics() {
455461
return new PagedIterable<>(cnst("/ticket_metrics.json"), handleList(Metric.class, "ticket_metrics"));
456462
}
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
package org.zendesk.client.v2.model;
2+
3+
import com.fasterxml.jackson.annotation.JsonProperty;
4+
5+
import java.io.Serializable;
6+
7+
/**
8+
* @author caionovaes
9+
* @since 08/24/2018
10+
*/
11+
public class UserRelatedInfo implements Serializable {
12+
13+
private static final long serialVersionUID = 1L;
14+
15+
@JsonProperty(value = "assigned_tickets")
16+
private Integer assignedTickets;
17+
@JsonProperty(value = "requested_tickets")
18+
private Integer requestedTickets;
19+
private Integer topics;
20+
@JsonProperty(value = "topic_comments")
21+
private Integer topicComments;
22+
private Integer votes;
23+
private Integer subscriptions;
24+
@JsonProperty(value = "entry_subscriptions")
25+
private Integer entrySubscriptions;
26+
@JsonProperty(value = "forum_subscriptions")
27+
private Integer forumSubscriptions;
28+
@JsonProperty(value = "organization_subscriptions")
29+
private Integer organizationSubscriptions;
30+
@JsonProperty(value = "ccd_tickets")
31+
private Integer ccdTickets;
32+
33+
public Integer getAssignedTickets() {
34+
return assignedTickets;
35+
}
36+
37+
public void setAssignedTickets(Integer assignedTickets) {
38+
this.assignedTickets = assignedTickets;
39+
}
40+
41+
public Integer getRequestedTickets() {
42+
return requestedTickets;
43+
}
44+
45+
public void setRequestedTickets(Integer requestedTickets) {
46+
this.requestedTickets = requestedTickets;
47+
}
48+
49+
public Integer getTopics() {
50+
return topics;
51+
}
52+
53+
public void setTopics(Integer topics) {
54+
this.topics = topics;
55+
}
56+
57+
public Integer getTopicComments() {
58+
return topicComments;
59+
}
60+
61+
public void setTopicComments(Integer topicComments) {
62+
this.topicComments = topicComments;
63+
}
64+
65+
public Integer getVotes() {
66+
return votes;
67+
}
68+
69+
public void setVotes(Integer votes) {
70+
this.votes = votes;
71+
}
72+
73+
public Integer getSubscriptions() {
74+
return subscriptions;
75+
}
76+
77+
public void setSubscriptions(Integer subscriptions) {
78+
this.subscriptions = subscriptions;
79+
}
80+
81+
public Integer getEntrySubscriptions() {
82+
return entrySubscriptions;
83+
}
84+
85+
public void setEntrySubscriptions(Integer entrySubscriptions) {
86+
this.entrySubscriptions = entrySubscriptions;
87+
}
88+
89+
public Integer getForumSubscriptions() {
90+
return forumSubscriptions;
91+
}
92+
93+
public void setForumSubscriptions(Integer forumSubscriptions) {
94+
this.forumSubscriptions = forumSubscriptions;
95+
}
96+
97+
public Integer getOrganizationSubscriptions() {
98+
return organizationSubscriptions;
99+
}
100+
101+
public void setOrganizationSubscriptions(Integer organizationSubscriptions) {
102+
this.organizationSubscriptions = organizationSubscriptions;
103+
}
104+
105+
public Integer getCcdTickets() {
106+
return ccdTickets;
107+
}
108+
109+
public void setCcdTickets(Integer ccdTickets) {
110+
this.ccdTickets = ccdTickets;
111+
}
112+
113+
@Override
114+
public String toString() {
115+
return "UserRelatedInfo{" +
116+
"assignedTickets=" + assignedTickets +
117+
", requestedTickets=" + requestedTickets +
118+
", topics=" + topics +
119+
", topicComments=" + topicComments +
120+
", votes=" + votes +
121+
", subscriptions=" + subscriptions +
122+
", entrySubscriptions=" + entrySubscriptions +
123+
", forumSubscriptions=" + forumSubscriptions +
124+
", organizationSubscriptions=" + organizationSubscriptions +
125+
", ccdTickets=" + ccdTickets +
126+
'}';
127+
}
128+
}

0 commit comments

Comments
 (0)