Element API
Version 4.1.0
March 14, 2024
- Element API now requires Craft 4.3.0+ or 5.0.0+.
- Endpoints are no longer cached beyond the lowest expiry date in the results. (#187)
Version 3.0.1.1
July 7, 2022
Fixed
- Fixed changelog.
Version 3.0.1
July 7, 2022
Fixed
- Fixed an issue where
EVENT_BEFORE_SEND_DATA
wasn't returning data. (#165)
Version 3.0.0
May 3, 2022
Version 2.8.5
May 3, 2022
Fixed
- Fixed an error that occurred on Live Preview requests, for endpoints with a
cache
key defined. (#158)
Version 2.8.4
December 15, 2021
Fixed
- Fixed a bug where an invalid response code would be returned if the
one
endpoint config setting was used and Craft could not find a matching element. (#157)
Version 2.8.3
September 25, 2021
Fixed
- Fixed a bug where endpoint callables weren’t getting called for
OPTIONS
requests. (#156)
Version 2.8.2
September 3, 2021
Fixed
- Fixed a bug where custom
cache
durations were getting ignored. (#153)
Version 2.8.1
September 1, 2021
Fixed
- Fixed an “Header may not contain more than a single header” error that could occur if a different exception had occurred. (#115)
- Fixed a bug where most exceptions were resulting in 404 responses rather than 500s.
- Fixed a bug where the
cacheKey
setting would cause an error on non-cached endpoints. (#152)
Version 2.8.0
August 31, 2021
Added
- Added the
cacheKey
endpoint configuration setting. (#145) - Added the
contentType
endpoint configuration setting.
Changed
- Element API now requires Craft 3.6 or later.
- API endpoints now send
X-Robots-Tag: none
headers. (#124) OPTIONS
requests now return an empty response. (#128)- JSON Feed endpoints now set the
version
tohttps://jsonfeed.org/version/1.1
. - JSON Feed endpoints now use the
application/feed+json
content type by default. - Error responses no longer contain the exception message, unless the exception thrown was an instance of
yii\base\UserException
. (#130)
Fixed
Version 2.7.0
May 26, 2021
Added
- It’s now possible to invalidate Element API caches via the Caches utility and the
invalidate-tags/element-api
command. (#136)
Changed
- Element API now requires Craft CMS 3.5 or later.
- Endpoint responses are now cached by default, and are invalidated automatically when relevant elements are saved or deleted.
- Exceptions thrown while resolving endpoints are now logged. (#117)
Fixed
- Fixed a bug where non-200 responses were getting cached. (#130)
Version 2.6.0
August 1, 2019
Added
- Added the
callback
endpoint config setting, which enables JSONP output. (#96)
Changed
- The
defaults
setting can now be set to a callable. (#98) criteria
endpoint settings can now specify anoffset
. (#99)- Updated Fractal to 0.18. (#109)
Deprecated
- Deprecated
craft\elementapi\resources\EntryResource
. (#108)
Fixed
- Fixed a bug where field types that return objects were getting converted to arrays by the default element transformer. Now their serialized value is used instead. (#75)
Version 2.5.4
July 29, 2018
Version 2.5.3
June 20, 2018
Changed
- The cache key now takes into account the current site id. (#76)
Version 2.5.1
November 9, 2017
Changed
- PHP 7.2 compatibility.
Version 2.5.0
October 31, 2017
Added
- Added support for fetching entry drafts & versions.
- Added
craft\elementapi\resources\EntryResource
.
Changed
- Exceptions are now represented as JSON responses, with
error.code
anderror.message
properties. - Renamed
craft\elementapi\ElementResourceAdapter
tocraft\elementapi\resources\ElementResource
. craft\elementapi\resources\ElementResource::getElementQuery()
andgetTransformer()
are now protected methods.
Version 2.4.3
September 14, 2017
Fixed
- Fixed a deprecation error that occurred on Craft 3 Beta 25 and later. (craftcms/cms#1983)
Version 2.4.2
August 17, 2017
Changed
- Craft 3 Beta 24 compatibility.
Version 2.4.1
July 7, 2017
You will need to rename your Element API config file to
element-api.php
when updating to Craft 3 Beta 20+ and Element API 2.4.1+.
Changed
- Craft 3 Beta 20 compatibility.
Version 2.4.0
May 25, 2017
Added
- Added the
include
andexclude
endpoint config settings. (#42)
Version 2.3.0
May 24, 2017
Added
- Added the
cache
endpoint config setting.
Version 2.2.0
May 18, 2017
Added
- Added a JSON Feed V1 serializer.
- Added the
meta
endpoint config setting. - Added the
serializer
endpoint config setting. - Added the
jsonOptions
endpoint config setting. - Added the
pretty
endpoint config setting.
Changed
- Updated Fractal to 0.16.
Fixed
- Fixed a bug where pagination URLs contained an extra
pattern
query param.
Version 2.1.0
May 16, 2017
Added
- Added support for a
resourceKey
endpoint config setting (default is'data'
).
Fixed
- Fixed the changelog and download URLs.
Version 2.0.2
April 18, 2017
Fixed
- Fixed a PHP error that occurred when paginating results. (#36)
Version 2.0.1
March 24, 2017
Changed
- Craft 3 Beta 8 compatibility.
Version 2.0.0
February 10, 2017
Added
- Craft 3 compatibility.
- It’s now possible to provide custom resource adapter classes, which could be associated with other things besides elements.
- Added
craft\elementapi\ResourceAdapterInterface
. - Added
craft\elementapi\ElementResourceAdapter
.
Deprecated
- Deprecated the
first
endpoint config setting. Useone
instead.
Version 1.6.0
May 25, 2017
Added
- Added the
include
andexclude
endpoint config settings. (#41)
Version 1.5.0
May 24, 2017
Added
- Added the
cache
endpoint config setting.
Fixed
- Fixed a bug where endpoint were sending JSON headers even if an exception occurred and the HTML error view was returned. (#39)
Version 1.4.0
May 18, 2017
Added
- Added a JSON Feed V1 serializer.
- Added the
meta
endpoint config setting. - Added the
serializer
endpoint config setting. - Added the
jsonOptions
endpoint config setting.
Changed
- Updated Fractal to 0.16.
Version 1.3.0
May 16, 2017
Added
- Added support for a
resourceKey
endpoint config setting (default is'data'
).
Version 1.2.1
April 12, 2016
Changed
- Pagination URLs will now honor any existing query string parameters.
Version 1.2.0
April 2, 2016
Added
- Added the
elementApi.onBeforeSendData
event.
Version 1.1.0
December 20, 2015
Changed
- Updated to take advantage of new Craft 2.5 plugin features.
Version 1.0.0
August 19, 2015
Initial release.