- Fix large attachment handling with string keys and custom content_ids
- Added access to response headers
- Added support for
single_levelquery parameter in Folders API for Microsoft accounts - Added support for
include_hidden_foldersquery parameter in folders list endpoint for Microsoft accounts to control whether hidden folders are included in the response - Added support for passing in string contents for multipart and base64 (<3MB) attachments (#528)
- Fixed HTTParty encoding compatibility issue with multipart requests (#528)
- Replaced
rest-clientdependency withhttpartyfor improved maintainability and securityrest-clientis no longer actively maintained and has known security vulnerabilitieshttpartyis actively maintained and provides better performance- All existing functionality remains backwards compatible - no customer code changes required
- Removed workaround for
rest-clientcookie jar threading bug
- Added support for new
fieldsquery parameter values in Messages API:include_tracking_options: Returns messages and their tracking settingsraw_mime: Returns the grant_id, object, id, and raw_mime fields only
- Added support for
tracking_optionsfield in message responses containing:opens: Boolean indicating if message open tracking is enabledthread_replies: Boolean indicating if thread replied tracking is enabledlinks: Boolean indicating if link clicked tracking is enabledlabel: String label describing the message tracking purpose
- Added support for
raw_mimefield in message responses containing Base64url-encoded message data - Added
MessageFieldsmodule with constants for all valid field values to improve developer experience - Fixed multipart email sending bug where large attachments would fail due to multipart flag key mismatch (#525)
FileUtils.handle_message_payloadtransforms keys to symbols (:multipart)HttpClient.build_requestwas only checking for string keys ("multipart")- Now checks for both string and symbol keys to maintain full backwards compatibility
- Prevents encoding errors when sending emails with attachments larger than 3MB
- Added support for Notetaker APIs
- Added support for Notetaker via the calendar and event APIs
- Added MESSAGE_BOUNCE_DETECTED to the webhook triggers
- Fixed issue to raise an explicit exception when the response lacks a JSON body (#520)
- Removed
file_pathfromFileobject to match the Send API schema - Added events import function to the RubySDK
- Added response headers to Ruby SDK
- Fixed issue where errors were not properly thrown due to an instance type of
Stringinstead ofHash
- Added support for private Scheduling configuration.
- Added ability to add optional
content_idto support inline image onsend. - Added custom filename support for large attachments.
- Adjusted the gendoc to show that the
provider_erroris a Hash.
- Added support for scheduler APIs
- Added
query_paramsfield toFolders&Threadsfind - Added custom filename support for attachments
- Added query support for folders
- Added dependency on
ostructgem - Enable SDK to reattach large files to messages on retry
- Downgraded
rest-clientto2.0for better compatibility
- Fixed sending attachments less than 3MB
- Added query support for messages
- Added support for clean messages
- Added support for getting access token info
- Added new webhook triggers
- Improved message sending and draft create/update performance
- Change default timeout to match API (90 seconds)
- Fixed error when invoking
Auth.detect_provider
- Fixed the HTTP operation of updating grants
- Fixed endpoint URL of rotating webhooks
- Fixed a bug during OAuth URL building
- Fixed a bug where the
next_cursorfield was omitted for list responses
- BREAKING CHANGE: Ruby SDK v6 supports the Nylas API v3 exclusively, dropping support for any endpoints that are not available in v3.
- BREAKING CHANGE: Officially support minimum Ruby v3
- BREAKING CHANGE: Removed all models and typing from the SDK
- REMOVED: Local Webhook development support is removed due to incompatibility
- Rewritten the majority of SDK to be more modular and efficient
- Created error classes for the different API errors as well as SDK-specific errors
- Added a configurable timeout for outgoing calls to the API
- Add support for verifying webhook signatures
- Add
event.updated_at - Allow native authentication to return the full response like the
exchange_code_for_token
- Add missing
provider_idattribute toLabel - Add
organizer_emailandorganizer_nametoEvent - Add missing job status webhook triggers
- Fix
MESSAGE_LINK_CLICKEDtrigger
- Add local webhook testing support
- Add
tzinfo,faye-websocket,eventmachineas runtime dependencies
- Added support for rate limit errors
- Added
disable_provider_selectionoption for building auth URL - Improved performance by skipping creating instance of StringIO before parsing JSON
- Add timezone fields to the
Whenclass - Adds visibility attribute to
Eventclass - Add support for calendar colors (for Microsoft calendars)
- Add support for getting
idsandcountfor collections not supported by the API - Fix Ruby 3.x compatibility for expanding keyword arguments
- Add missing hosted authentication parameters
- Add
reply_to_message_idfield inMessages - Fix calendar availability failing when
round_robinisnil
- Add support for event reminders
- Add
metadatafield toJobStatus
- Support collective and group events
- Fix
ModelNotFilterableErrorwhen querying for accounts with metadata
- Fix calendar availability not serializing
FreeBusyandOpenHoursproperly - Fix Authentication demo app using deprecated Google scopes
- Add missing
phone_numberfield inParticipant - Fix
NoMethodErrorwhen callingNewMessage#send!
- Add Outbox support
- Add new
authentication_typefield in Account - Add support for basic authentication
- Enable Nylas API v2.5 support
- Improved support for
Webhookobjects - Support
calendarsfor availability methods - Fix
interval_minuteskeyword for availability methods
- Add job status support
- Add
Eventto ICS support - Add support for getting access token information
- Improved support for Application Details
- Enable ability to delete
Accountobjects - Fix saving and deleting
Folderobjects
- Enabled support for adding metadata to a
NewMessage/Draft - Fix bug where updating an Event results in an API error
- Add support for event notifications
- Add more Scheduler support
- Add metadata support for
Calendar,MessageandAccount - Modify
exchange_code_for_tokento allow returning a full body
- Add Component CRUD Support
- Add Scheduler support
- Add support for calendar availability
- Add support for
Filedelete operation - Fix issue where
file_idsget reset to empty
- Fix draft send method to send existing draft when tracking is enabled
- Add support for Event Conferencing
- Fix update draft failing if version is not explicitly set
- Fix draft
.sendlogic
- Add support for Neural API
- Fix issue where
Deltadid not have a header attribute for expanded headers - Fix ArgumentError when calling
Nylas::API#send!due to missing double splat (**) - Fix issue where server errors are not reported if HTML is returned
- Fix issue where expanded
Threadobjects were not returning messages
- Add support for
Room Resource - Fix issue where "302 Redirect" response codes were treated as errors
- Fix issue where
apivalue was overriden when callingmessage.expanded
- Add support for read only attributes
- Add
save_all_attributesandupdate_all_attributesmethods to support nullifying attributes. - Add support new
Eventmetadata feature - Fix attributes assignment for
Delta - Fix issue where files couldn't be attached to drafts
- Fix exception raise when content-type is not JSON
- Fix issue where draft version wouldn't update after
updateorsave
- Send
Nylas-API-Versionheader to API with latest supported version. - Fix issue sending message using raw mime type.
- Support for
messages.expanded.find(id)to return expanded message. - Add support for hosted authentication
- Fix bug to not send
id,objectandaccount_idon events update call
- Support for Ruby 3.
- Add support for
/free-busyendpoint - Fix issue where download a file fetch via
findfailed,
- Add support for
notify_participantswhen creating events - Add provider attribute to account
- Add
content_dispositionfield to File - Fix thread-safety issue in HTTP::CookieJar loading
- fix failing http_client spec after merging main
- Skip parsing response if content is not JSON
- Add missing http status codes / errors.
- Add reply_to to NewMessage
- Add message tracking to drafts.
- Truncate the returned filename so it's less than 256 characters and compatible with rb_sysopen.
- Bump required rest client dep to >= 2.0, remove travis ci tests for rest client 1, ruby v2.3
- Use to_json helper instead of JSON.dump.
- Remove folder on message.save for updates
- Fix JSON parsing behavior
- Fix rubocop warnings for http_client and spec
- No longer rescue json parse errors, use Yajl instead of JSON for parsing responses (due to unicode issue).
- Add specs for changes to message.save
- Store folder id in folder_id and remove folder if present before saving.
- Adding secondary_address field to physical address model
- Add support to move
messageandthreadbetweenfolder. - Handle new attributes added to API gracefully
- Add is_primary and other new Calendar attributes
- Fix a bug with
whenblocks when creating events - Add support for the Event.ical_uid field
- Add support for
/contacts/groupsendpoint. - Fix issue when calling
.saveonmessage(#233) - Add support for Rails 6.
- Fix issue for updating
messagewith sendinglabel_ids(#231) - Support for
wheninNylas::Eventfor more attributes. - Add internal transfer api to support initialize related objects.
- Fix encoding issues when downloading attachments.
- Add support for
sourceattribute in Contact model
- Add support for
/ip_addressesendpoint - Add optional argument for
Model#to_json - Reintroduce support for Ruby 2.3
- Add Rails 4 bundler support to setup script
- Specify gemfiles called in test script
- Drop support for Ruby 2.2 and 2.3: they have reached end-of-life
- Add support for Ruby 2.5 and 2.6
- Add
scopesargument toNylas::API#authenticatefor selective sync - Add
Account#revoke_all - Add X-Nylas-Client-Id header for HTTP requests
- Enables silent addition of fields to API without impact to SDK
- Fixes api attribute breakage on enumeration (#188)
- Drop support for ruby 2.0 and below
- Add support for v2 of the Contacts API
- Switch to an ActiveModel/ActiveQuery compliant interface for interacting with objects and APIs
- Add support for Ruby 2.4+
- Add support for Rails 4+
- Filters now work correctly for all models
.eachnow pages requests- Numerous other bug fixes
- Fix deleting event request (#101)
- Adds support for message tracking (https://github.com/cberkom)
- Removes
interpret_http_statusto be included ininterpret_response - Improve error handling
- Add native authentication example code
- Add webhooks example code
- Removes experimental JRuby support
- Fix folders and labels updates for threads and messages
- Revert pull request #71
- Remove get_cursor method that calls deprecated generate_cursor endpoint
- Modify
delta_stream methodto remove built-inEventMachine.runblock and allow for multiple streams.delta_streammust now be called from inside anEventMachine.runblock url_for_authenticationnow accepts a:stateparameter (see https://nylas.com/docs#server_side_explicit_flow for more details)
- Deprecate the tags API
- Remove the archive!/unarchive! methods
- Expose
starred,unread,has_attachmentsin Nylas::Thread
- Add
Messages#files?Issue #40 - Return an external Enumerator when no block given. Issue #42 (Steven Harman)
- Expose
foldersin the Delta Stream API. - Add
Inbox::Errorbase class for all errors. (Steven Harman) - Expose
sync_stateon the/accountAPI. (Steven Harman) - Return Enumerator for #deltas when no block given
- Ruby < 1.9.3 no longer supported
- Add travis support for Mac OS X
Message#expandedreturns an expanded version of a message- Expose the
server_errorfield when failing to send messages - minor bug fixes
- various test cleanups (Steven Harman)