- Remove JSON support. The client now receives only Thrift-encoded responses from the Content API.
- Breaking change: Removed the optional
useThrift
parameter from theGuardianContentClient
constructor.
- Bump the content-api-models adding extra properties of media atoms: mime-type, duration and poster.
- Bump the content-api-models dependency adding campaignColour and isMandatory
- add
internalShortId
- add missing circe decoders
- Bump the content-api-models dependency to a new major version.
- Bump the content-api-models dependency
- Add a new show-section parameter
- Bump the content-api-models dependency
- Bump the content-api-models dependency
- Add
thumbnailImageUrl
to fields. - Improve JSON and Thrift deserialisation
- Add podcasts categories
- Bump the content-api-models dependency
- Bump the content-api-models dependency
- Downgrade libthrift from 0.9.3 to 0.9.1
- Use content-api-models-json for JSON parsing
- Revert the temporary fix for handling error responses when using Thrift
- Update the models to add new optional fields to the
Blocks
model
- Fix the error responses when using Thrift
- Add Video Stats query type
- Update Scrooge from 3.16.3 to 4.6.0
- Split the models into a separate library.
- Add
contains-element
filter. e.g. contains-element=video - Add
commentable
filter. - Thrift now supported by the Content API.
- Add optional support (client-side) for processing thrift responses, together with json. However, thrift is NOT supported at the moment by Content Api; an upgrade of the Scala client will follow.
- The following fields for item responses are now Scala Options:
results
,relatedContent
,editorsPicks
,mostViewed
, andleadContent
.
- Add show-stats parameter.
- Add star-rating and membership-access filters
- Fix the
package
field on the content response. It is actually calledpackages
and is a list.
- Update content-atom version to 0.2.6. This adds
id
andbucket
fields to thequiz
model. - Update story-package version to 1.0.2. This adds the
packageName
field to thepackage
model. - Add the
tweet
asset type.
- Add tracking tag type
- Add embed elements support
- Add viewpoints support
- Change quiz (single object) to quizzes (list of objects)
- Add show-atoms filter
- Add quiz support
- Add show-packages filter
- Add serializer for story package group
- Add lang filter
- Add "audio" content type
- Add "lang" field to content
- Add "pinned" block attribute
- Add helper method to JsonParser
- Add models for new story packages implementation
- Split the model classes into a separate artifact called
content-api-models
. They are versioned in sync with the Scala client.
DO NOT USE. This was a botched release. It was only released for Scala 2.11.x
- Add
embed
to the list of asset types
- Tweak model and fix deserialisation for crossword
separatorLocations
field
- Added
crossword
content type
- Parse "keyEvent" and "summary" boolean properties in block attributes
- Added
clean
field to AssetFields - Added
sensitive
- Added
explicit
field to AssetFields - Added tests for audio elements
- Added
durationMinutes
,durationSeconds
,explicit
andclean
field to AudioElementField
- Added the
embedType
andhtml
fields to asset fields
- Added the image field to Podcast metadata
- Added thumbnailUrl, role, mediaId, iframeUrl, scriptName, scriptUrl, blockAds to AssetFields.
- Added allowUgc to ContentFields.
- Added AUDIO type to AssetType.
- Added displayCredits field to AssetFields.
- Added MaxSearchQueryIdSize to Limits.
- Make userAgent protected.
- Additional fields added to block elements.
- 'durationMinutes' and 'durationSeconds' fields added to AssetFields.
- 'legallySensitive' field added to ContentFields.
- Travis file added.
- Remove incorrectly added isMaster field.
- Add thrift definition to built jar file.
- Define and generate the Content API data model via Scrooge using Thrift.
- Provide proper parsing of error responses.
- Add support for the
type
field onContent
, including a filter to search by content type.
- Add an
isMaster
field to the ImageTypeData model. - Add a workaround for a bug in Dispatch that can cause a resource leak.
- Include the client's version in the user-agent header sent with requests.
- Make it easier to inject a custom implementation for the underlying HTTP client.
- Add support for querying what content has been removed from the Content API.
- Bump Scala to 2.11.7
- Add crosswords.
- Add audio and pull quote type data for block level elements.
- Add additional field (credit) to type data of image block elements.
- Update to dispatch v0.11.3, to avoid clashes when using Play v2.4.0 - see #77
- Add type data for image block elements.
- Add additional field (html) to type data of video block element.
- Add type data for video, text and tweet block elements.
- Add editions
- Add block elements and date fields
- Add rights in response
- Remove collections
- Add content blocks
- Fix request headers not being sent correctly
- Respect DNS short TTL by setting the connection lifetime maximum to 60 seconds.
- Add email address field to tag
- Do not allow partial item or collection queries that throw exceptions
- Require ExecutionContext when running queries, not when constructing the client
- Add decent toString method to queries
- Expose generated URL to clients
- Add a parameter for the maximum url size that Content API will accept
- Large refactor to logically separate queries from the client itself. This makes queries themselves more reusable as they're now just datatypes.
- Add twitter handle field to tag (only available for contributors tag)
- Add new kicker fields on collections
- Add back extended filtering on collections
- Fix bug with filtering tags on tag pages
- Allow http client to be overridden
- Add back trait to ease extending
- Use Json4s-ext for date parsing
- Add productionOffice filter for content search
- Add first name and last name to tag (only available for contributors tag)
- Only provide an asynchronous future-based interface
- Move to the
com.gu.contentapi.client
package - Remove various features no longer present in the API
- Using an API key is no longer optional
- Rename main client object to
GuardianContentClient
- Start a changelog
- Other internal changes (eg. updating most of the tests)
(The history of previous versions has been lost to time.)