Skip to content

Commit 283c8e8

Browse files
thewheatchoran
authored andcommitted
Add support for deletion by user_id or email (#175)
1 parent de0444a commit 283c8e8

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,19 @@ ScrollableUserCollection usersScroll = User.scroll();
165165
List<User> users = usersScroll.getPage();
166166
usersScroll = usersScroll.scroll();
167167

168-
// Delete a user
168+
// Delete a user by Intercom ID
169169
User user = User.find("541a144b201ebf2ec5000001");
170170
User.delete(user.getId());
171+
172+
// Delete a user by user_id
173+
Map<String, String> params = Maps.newHashMap();
174+
params.put("user_id", "1");
175+
User.delete(params);
176+
177+
// Delete a user by email
178+
Map<String, String> params = Maps.newHashMap();
179+
params.put("email", "[email protected]");
180+
User.delete(params);
171181
```
172182

173183
### Contacts

intercom-java/src/main/java/io/intercom/api/DataResource.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,11 @@ public static <T> T delete(String id, String collectionPath, Class<T> c) {
5656
return resource.delete(c);
5757
}
5858

59+
public static <T> T delete(Map<String, String> params, String collectionPath, Class<T> c) {
60+
final HttpClient resource = new HttpClient(UriBuilder.newBuilder().path(collectionPath).query(params).build());
61+
return resource.delete(c);
62+
}
63+
5964
public static <C> C list(Map<String, String> params, String collectionPath, Class<C> c) {
6065
final HttpClient resource = new HttpClient(UriBuilder.newBuilder().path(collectionPath).query(params).build());
6166
return resource.get(c);

intercom-java/src/main/java/io/intercom/api/User.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,11 @@ public static User delete(String id)
6060
return DataResource.delete(id, "users", User.class);
6161
}
6262

63+
public static User delete(Map<String, String> params)
64+
throws AuthorizationException, ClientException, ServerException, InvalidException, RateLimitException {
65+
return DataResource.delete(params, "users", User.class);
66+
}
67+
6368
public static UserCollection list(Map<String, String> params)
6469
throws AuthorizationException, ClientException, ServerException, InvalidException, RateLimitException {
6570
return DataResource.list(params, "users", UserCollection.class);

0 commit comments

Comments
 (0)