Releases: cloudbees-oss/zendesk-java-client
0.14.0
We moved the repository from cloudbees github organization to cloudbees-oss
This version is breaking the compatibility of various various "Many" create/update/delete to fix them (the current implementation was broken).
A lot of integration tests were added to validate them and now these "Many" create/update/delete methods should work correctly and we extending them to various objects where they were missing.
💥 Breaking changes
- Fix the existing "Many" create/update/delete methods (#346) @aheritier
JobStatus
is not anymore a generic class. Are impacted by this change:
public JobStatus createOrganizations(Organization... organizations)
public JobStatus createTickets(List<Ticket> tickets)
public JobStatus createTickets(Ticket... tickets)
public JobStatus createUsers(List<User> users)
public JobStatus createUsers(User... users)
public JobStatus getJobStatus(JobStatus status)
public JobStatus importTickets(List<TicketImport> ticketImports)
public JobStatus importTickets(TicketImport... ticketImports)
public JobStatus onCompleted(Response response)
public JobStatus permanentlyDeleteTicket(Ticket ticket)
public List<JobStatus> getJobStatuses(List<JobStatus> statuses)
public ListenableFuture<JobStatus> createOrganizationsAsync(List<Organization> organizations)
public ListenableFuture<JobStatus> createTicketsAsync(List<Ticket> tickets)
public ListenableFuture<JobStatus> getJobStatusAsync(JobStatus status)
public ListenableFuture<JobStatus> importTicketsAsync(List<TicketImport> ticketImports)
public ListenableFuture<JobStatus> queueCreateTicketAsync(Ticket ticket)
public ListenableFuture<JobStatus> updateTicketsAsync(List<Ticket> tickets)
public ListenableFuture<JobStatus> createUsersAsync(List<User> users)
public ListenableFuture<List<JobStatus>> getJobStatusesAsync(List<JobStatus> statuses)
You now have to iterate/loop/wait until getJobStatus(aJobStatus).getStatus() == JobStatus.JobStatusEnum.completed
to confirm that the mass update was processed.
Various integration tests were added in RealSmokeTest.java
to show how to use these APIs.
🚀 New features and improvements
- Add support for merging users (#350) @Helmsdown
public User mergeUsers(long userIdThatWillRemain, long userIdThatWillBeMerged)
- Validate dates management (#348) @aheritier
- Add various "Many" create/update/delete methods (#346) @aheritier
public Iterable<DeletedTicket> getDeletedTickets()
public Iterable<DeletedTicket> getDeletedTickets(String sortBy, SortOrder sortOrder)
public JobStatus createOrUpdateUsers(List<User> users)
public JobStatus createOrUpdateUsers(User... users)
public JobStatus createOrganizationMemberships(List<OrganizationMembership> organizationMemberships)
public JobStatus createOrganizationMemberships(OrganizationMembership... organizationMemberships)
public JobStatus updateOrganizations(List<Organization> organizations)
public JobStatus updateOrganizations(Organization... organizations)
public JobStatus updateTickets(List<Ticket> tickets)
public JobStatus updateTickets(Ticket... tickets)
public JobStatus updateUsers(List<User> users)
public JobStatus updateUsers(User... users)
public ListenableFuture<JobStatus> createOrUpdateUsersAsync(List<User> users)
public ListenableFuture<JobStatus> createOrganizationMembershipsAsync(List<OrganizationMembership> organizationMemberships)
public ListenableFuture<JobStatus> updateOrganizationsAsync(List<Organization> organizations)
public ListenableFuture<JobStatus> updateUsersAsync(List<User> users)
public void deleteOrganizationMemberships(long id, long... ids)
🐛 Bug Fixes
- Deprecates
getTicketsIncrementally(Date startTime, Date endTime)
(#347) @aheritier
📦 Dependency updates
- Bump jackson-bom from 2.11.0 to 2.11.2 (#351) @dependabot
- Bump animal-sniffer-enforcer-rule from 1.18 to 1.19 (#352) @dependabot
- Bump wiremock from 2.26.3 to 2.27.1 (#353) @dependabot
- Bump assertj-core from 3.16.1 to 3.17.0 (#354) @dependabot
- Bump extra-enforcer-rules from 1.2 to 1.3 (#355) @dependabot
0.13.0
Improvements and new features
- Help Center: new method
Iterable<Article> getArticles(String locale)
allows to find articles for a given locale. ( PR #343 - Thanks @randysecrist) - Help Center: new method
Iterable<Article> getArticles(Section section)
allows to find articles for a given section. ( Fixes ##254 - PR #323 - Thanks @mvkvl) - Help Center: new methods
void deleteTranslation(Translation translation)
andvoid deleteTranslation(Long translationId)
to delete translations ( PR #322 - Thanks @maxixcom) - Runtime Dependencies updates
- Bump
jackson-bom
from 2.10.2 to 2.11.0 ( PR #340 - Thanks @dependabot) - Bump
async-http-client
from 2.10.4 to 2.12.1 ( PR #339- Thanks @dependabot)
- Bump
- Build/Test Dependencies updates
- Bump
assertj-core
from 3.14.0 to 3.16.1 ( PRs #327 #342 - Thanks @dependabot) - Bump
wiremock
from 2.25.1 to 2.26.3 ( PRs #329 #337- Thanks @dependabot)
- Bump
0.12.0
Improvements and new features
- Help Center: Management Permission Groups ( https://developer.zendesk.com/rest_api/docs/help_center/permission_groups ): A management permission group defines which agents can create, update, archive, and publish articles. It consists of a set of privileges, each of which is mapped to a user segment. Agents receive whichever privileges are associated with the user segments they belong to. ( PR #315 - Thanks @maxixcom)
- Help Center: User Segments ( https://developer.zendesk.com/rest_api/docs/help_center/user_segments ): A user segment defines who can view the content of a section or topic. ( PR #316 - Fixes #292 - Thanks @maxixcom)
- Supplying a
notify_subscribers
property along POST:/articles.json ( https://developer.zendesk.com/rest_api/docs/help_center/articles#create-article ): Supplying anotify_subscribers
property with a value of false will prevent subscribers to the article from receiving an article creation email notification. This can be helpful when creating many articles at a time. Specify the property in the root of the JSON object, not in the "article" object. ( PR #314 - Thanks @maxixcom) - Dependencies updates
- Bump
slf4j-api
andslf4j-simple
from 1.7.29 to 1.7.30 ( PR #317 #318 - Thanks @dependabot) - Bump
jackson-bom
from 2.10.1 to 2.10.2 ( PR #320 - Thanks @dependabot) - Bump
junit
from 4.12 to 4.13 ( PR #321 - Thanks @dependabot)
- Bump
0.11.0
Backward incompatible changes
- The class
org.zendesk.client.v2.SortOrder
is moved toorg.zendesk.client.v2.model.SortOrder
org.zendesk.client.v2.model.Action#value
is an array ofObject
instead ofString
Improvements and new features
- Allow to configure custom headers ( Issue #252 - PR #258 - Thanks @duemir )
- Fix Action model value type ( Issue #262 - PR #263 - Thanks @Dohbedoh ) /!\ BACKWARD INCOMPATIBLE
- New fields
solved
,priority
,customFields
,type
fororg.zendesk.client.v2.model.Request
( PR #276 - Thanks @marydcouto ) - Add articles search by labels:
Zendesk#getArticlesFromAnyLabels(List<String> labels)
,Zendesk#getArticlesFromAllLabels(List<String> labels)
( PR #284 - Thanks @dastultz ) - New search with order
Zendesk#getSearchResults(Class<T> type, String query, String sortBy, SortOrder sortOrder)
and deprecatesZendesk#getSearchResults(Class<T> type, String query, String params)
( PR #284 - Thanks @dastultz ) /!\ BACKWARD INCOMPATIBLE - Minor code cleanup (+remove some deprecated code used from external libs...)
- Test Dependencies updates
- Bump
wiremock
from2.14.0
to2.25.1
( PR #313 - Thanks @dependabot) - Bump
assertj-core
from3.9.0
to3.14.0
( PR #312 - Thanks @dependabot)
- Bump
- Build updates
- Bump
maven-enforcer-plugin
from3.0.0-M2
to3.0.0-M3
( PR #311 - Thanks @dependabot)
- Bump
0.10.0
Improvements and new features
- Support for Dynamic Content ( PR #293 - Thanks @hscabral )
- Add a sorting order for the comment retrieval ( Issue #307 - PR #308 - Thanks @PierreBtz )
- Configure @dependabot ( PR #296 )
- Dependencies updates
** Bumpslf4j-simple
from1.7.25
to1.7.29
( PR #300 - Thanks @dependabot )
** Bumpslf4j-api
from1.7.25
to1.7.29
( PR #301 - Thanks @dependabot )
** Bumpasync-http-client
from2.3.0
to2.10.4
( PR #304 - Thanks @dependabot )
** Bumpjackson-bom
from2.9.3
to2.10.1
( PR #305 - Thanks @dependabot )
** Bumphandy-uri-templates
from2.1.6
to2.1.8
( PR #299 - Thanks @dependabot ) - Build updates
** Bumpcloudbees-oss-parent
from8
to9
( PR #298 - Thanks @dependabot )
** Bumpmaven-enforcer-plugin
from3.0.0-M1
to3.0.0-M2
( PR #297 - Thanks @dependabot )
** Bumpextra-enforcer-rules
from1.0-beta-6
to1.2
( PR #302 - Thanks @dependabot )
** Bumpanimal-sniffer-enforcer-rule
from1.14
to1.18
( PR #303 - Thanks @dependabot ) - Fix tests failures
**org.zendesk.client.v2.RealSmokeTest.getArticleTranslations
( PR #309 )
**org.zendesk.client.v2.RealSmokeTest.showUserComplianceDeletionStatusExpectValidCompletionStatus
( PR #310 )
0.9.0
Bug fixes
- Fix
Zendesk#updateUserIdentity
call to pass theidentity
JSON object (Thanks @duemir - PR #278) - Fix
CommentEvent#getTrusted()
to return aBoolean
instead of aboolean
to avoid NPEs (Thanks @rodrigopalhares - PR #282) - Fix API endpoints for creating (POST) Sections and Categories - endpoint had
/translation.json
and according to Zendesk documentation, it should be/translations.json
(Thanks @hscabral - PR #275)
Improvements and new features
- New
User
class attributes:chatOnly
,sharedPhoneNumber
,defaultGroupId
,roleType
,twoFactorAuthEnabled
,reportCsv
(Thanks @matthewtckr - PR #270) - New
Section
class attribute:description
(Thanks @hscabral - PR #275) - New
Zendesk#getHelpCenterLocales()
method to list all enabled locales and default locale (Thanks @hscabral - PR #275) - New
Article
class attributes:outdatedLocales
,userSegmentId
,permissionGroupId
,editedAt
(Thanks @Dohbedoh - PR #290 - Issue #289) - These fields are now mandatory and are preventing to create articles with old versions of zendesk-java-client
0.8.0
- New method
ListenableFuture<JobStatus<Ticket>> updateTicketsAsync(List<Ticket> tickets)
to update many ticket at once (thx @wakingrufus - PR #260) - New method
UserRelatedInfo getUserRelatedInfo(long userId)
to get User Related Information (thx @CaioNovaes - PR #268)
0.7.0
The Help Center Section creation was fixed,
Macro DTO was updated (Id is long),
Permanent deletion of a handful of Items was added ( GDPR compliancy )
0.6.2
- Fixes: Zendesk client keeps the thread occupied even after performing Zendesk.close().
- Fixes: Inline parameter on Article Attachments doesn't work
- Fixes: Write single element arrays unwrapped for Action.
0.6.1
Fixes: Update of non-multi-select custom fields