Adding CBP support to requested tickets (api/v2/users/:id/tickets/requested)
Adding support to the agent availabilities API endpoints.
Adding multiple Gemfile and Gemfile.lock files for differen Ruby versions so that Snyk can scan the repo for vulnerabilities.
Adding CBP support to more endpoints. please see cbp_support_spec.rb
for the complete list.
Adding CBP support to more endpoints. please see cbp_support_spec.rb
for the complete list.
In this version, we are adding CBP support to Tickets, Triggers, Groups, Organizations, GroupMembership and OrganizationMembership. The supported enpoints will benefit from CBP requests and more endpoints should be added to the list in the near future.
This version introduces a small change in order to prevent CBP request attempts for API endpoints in which we know this pagination is not supported. At the moment, the show_many endpoints have been excluded from attempting CBP requests.
In this version, We are bringing Cursor Based Pagination (CBP) support to all supported endpoints. This is in line with the limits announcement made by Zendesk to promote system reliability and also CBP usage.
Collection#all
uses CBP by default instead of Offset Based Pagination (OBP). If an endpoint doesn't support CBP, then a new OBP request will be triggered automatically with the same parameters. This is managed by the library internallyCollection#next and #prev
using CBP by default- The pagination behaviour of search and export endpoint have not changed
- We are adding support for httpx. We will be monitoring the issues and feedback to determine if we continue the support and make it into a stable release
Notes:
- OBP support will be further limited in the Zendesk APIs and will be deprecated soon. We are working to ensure all Zendesk APIs support CBP and transition for the customers is smooth
- The order of the returned results is different in CBP from OBP at times depending on the endpoint behaviour and support for ordering. Please note that any ordering was never hard-coded or built-in so it is not guaranteed. We recommend that you pick the relevant sort/order needed for your workflows and pass them explicitly when making the API call via the library
- This is a Beta-release and we seek your feedback, experiences. Please open an issue or create a PR to help us work with you
- v1 of this gem is not compatible with Faraday 1. We are releasing a new version with CBP support on August 1st with the version
v3.0.0
. Once the new version is released, we will no longer support the v1 officially
- More complete error message for
RecordInvalid
- Add support for Faraday 2.0
- Add
Label
resource for Articles - Add Ruby 3.2 to CI
- Add JRuby 9.4 to CI
- Drop support for Faraday 1
- Remove 2.6 from CI
- Remove JRuby 9.1 from CI, see https://github.com/zendesk/zendesk_api_client_rb/runs/8110095881
- Remove JRuby 9.2 from CI, see https://github.com/zendesk/zendesk_api_client_rb/runs/8110151024
Note:
It is possible that the SDK will work okay in Ruby 2.6, but we do not guarantee it, and also support will not be provided on any issues.
We will continue to support Ruby 2.7 owing to the large set of developers still on Ruby 2. The support will end by Jan 2024.
We strongly recommend everyone to consider moving to Ruby 3 at the earliest.
- Fix Faraday v1 deprecation
- Fix: Ticket comments should be sent unchanged
- Update README: Document the REPL project, add release instructions
- Add
Schedule
resource - Add
Vote
resource for Articles - Add
CustomStatus
resource - Add
Translation
resource for Categories, Sections, and Articles
- Abandoned support for Ruby 2.5 (EOL)
- Tested in Ruby 3.1
- Add
Webhook
resource - Add
Organization#create_or_update
- Bug-fixing
- Improved documentation
- Refine https check for URL
- Support installations with hashie 5.0.0
- Add
OrganizationMembership.create_or_update{,!}
- Expand retry logic to support retries on 5xx error codes
- Add more info to ZendeskAPI::Error::RecordInvalid
- Upgrade addressable dependency
- Add configuration option to disable resource cache
- Add RecipientAddress resource
- Upgrade VCR and actionpack testing dependencies
- Add Organization Related resource
- Add Deleted Users and Deleted Tickets resource
- Switch over mini_mime for mime type lookups
- Add Trigger categories resource
- Add Section and Article resources
- Allow using hashie 4.x
- Add support to merge user API
- Allow using Faraday 1.x release in gemspec
- Added support for
UserRelated
operation on users resource - Bring back
UpdateMany
on users resource
- Fix Faraday deprecation notice and relax required version
- Fix
CreateOrUpdate
action to use singular resource name - Add
CreateMany
,CreateOrUpdate
andDestroyMany
to Organizations
- Add support for
.find
attachments - Set default request timeout of 60 seconds
- Add gem project metadata
- Add meaningful error when the username is not set using basic token auth
- Bring back spec live testing
- Remove forums resource and start using community topics
- Add assigned tickets association
- Add option to raise error when rate limited
- Add support for create_or_update for user resource
- Update ticket incremental export endpoint
- Add support to create or update many users and remove unsupported update many users
- Define respond_to_missing?
dropped support for Ruby 1.9.x, 2.0.x, 2.1.x and 2.2.x, all of which are EOL
log response body for 4xx errors (#354)
support batch update resources (#344)
document hashie dependency
silence logging spam (#327)
make error also work without an response
silence rubocop and show which offense was triggered
make extra output obvious by using default formatter
silence invalid file warning
silence logger
silence mashie
You are setting a key that conflicts with a built-in method Hashie::Mash#class defined in Kernel. This can cause unexpected behavior when accessing the key via as a property. You can still access the key via the #[] method.
avoid double builds
show what exactly went wrong
Remove dependency on scrub_rb
For people using Ruby 2.1 or newer, this gem is dead weight. Let's just document
that if you use an old version of Ruby, you need to install a gem that
implements scrub!
for you.
Fix addressable on older Rubies
added live spec
json v > 2.0 fails to install for ruby 1.9
Moved dev dependencies to Gemfile
added OrganizationSubscription
Support for unified Integer class in Ruby 2.4+
Ruby 2.4 unifies Fixnum and Bignum into Integer: https://bugs.ruby-lang.org/issues/12005
Enable a few more cops
Configure and enable a few indentation cops
Enable a few style cops
Enable RuboCop check after running specs
Remove version constraint on mime-types
Clients using Ruby < 2.0 should themselves set a version restriction so they don't install mime-types >= v3.0.
Lock webmock version to get green build
fix some rubocop warnings
fix deprecation warning on ruby 2.3.0
Add agent Set Group Membership as Default
https://developer.zendesk.com/rest_api/docs/core/group_memberships#set-m embership-as-default
fix method_as_class to handle non alphanumeric
remove extra line
gemspec cleanup
Don't need to send spec/ files along. Saves ~120kb.
remove ruby 1.8 from the gemfile
lock mime-types for ruby 1.9
mime-types 3.0 only supports ruby 2.0
only show bang! methods in README
DELETEs return 204s now
add a gzip middleware exception for httpclient
add user *_many endpoints
fix doc gitignores
add some more documentation
fix namespace walking in yardoc plugin [ci skip]
fix markdown generation [ci skip]
update class documentation link
fix documentation [ci skip]
restoring gemspec to the previous required ruby version
Sanitizing body responses to deal with bad characters.
Revert "always upload files as inline"
This reverts commit cc97c3733e47f524595b9dc35068218e7a410acd.
make user tags a proper association
add CreateMany and DestroyMany to Ticket
small spacing fix
always upload files as inline
Update pull request #254 Add .bundle/ to .gitignore Rename Ticket::display to Ticket::display!
Get RecordInvalid message from description in absence of details
Add agent resource and ticket-display feature
Implement update_many!
fix documentation for incremental export
issue #250
Change User-Agent to be Ruby specific
fix apps installation spec
remove multi_json
update sample app for 1.0
change live spec for recent tickets
no longer extending Read, just include
don't save existing comment associations
silence rspec warnings
make Voice::Ticket a CreateResource
Add zendesk voice ticket resource #245
destroy_many uses a comma separated list of ids
organization memberships are not updatable
Adds Organization Membership resource
Actually use the client
fix destroy_many! and create_many! on collections
Allow bulk actions on collections
Introduce reload!
Refactored initializer
return JobStatus
Bulk actions!
update README
add tests
consider all 3XX and 1XX responses invalid except for 304
AppNotification#handle_response: only call @attributes#replace if response is a hash