Prefer the companion object's com.gu.flexiblecontent.model.thrift.Alias.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Asset.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.AssetFields.apply for construction if you don't need to specify passthrough fields.
Supported asset types
Prefer the companion object's com.gu.flexiblecontent.model.thrift.AtomID.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.AudioElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Block.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.BlockAttributes.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CalloutElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CartoonElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CartoonImage.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CartoonVariant.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ChangeRecord.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Channel.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ChannelFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CodeElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Comment.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.CommentElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Content.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ContentAtomElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ContentChangeDetails.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ContentFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ContentSettings.apply for construction if you don't need to specify passthrough fields.
Content types supported by flexible content
Content types supported by flexible content
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Element.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ElementFields.apply for construction if you don't need to specify passthrough fields.
The supported Element types, the types inform what fields to expect and how the Element renders as HTML
The supported Element types, the types inform what fields to expect and how the Element renders as HTML
Prefer the companion object's com.gu.flexiblecontent.model.thrift.EmbedElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Event.apply for construction if you don't need to specify passthrough fields.
The event type describe the resource state
The event type describe the resource state
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Expiry.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ExpiryDetails.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Identifiers.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Image.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ImageElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ImageFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.InstagramElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.InteractiveElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ListElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.ListItem.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.MembershipElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.MembershipPlaceholder.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Newspaper.apply for construction if you don't need to specify passthrough fields.
Offices supported by flexible content
Offices supported by flexible content
Prefer the companion object's com.gu.flexiblecontent.model.thrift.PullquoteElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.RecipeElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Reference.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.RichLinkElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Rights.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Section.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Sponsorship.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.StandardElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Tag.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.TagUsage.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.Taxonomy.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.TextElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.TweetElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.User.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.VideoElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.VineElementFields.apply for construction if you don't need to specify passthrough fields.
Prefer the companion object's com.gu.flexiblecontent.model.thrift.WitnessElementFields.apply for construction if you don't need to specify passthrough fields.
An Asset represents an asset file and relevant metadata.
An Asset represents an asset file and relevant metadata.
An image or video will have multiple Assets representing different crops, scalings or qualities. The consumer can pick the appropriate Asset to render for their usage and client device size etc.
The metadata relating to a particular Asset
Supported asset types
Supported asset types
The metadata relating to an audio element
The block is the main container of body text for content.
The block is the main container of body text for content. Most content is made up of a single main media Block and a single body Block, live blogs are made up of multiple body Blocks, each Block representing an individual update.
Each Block is individually referencable and publishable. Blocks are made up of a number of sub elements
BlockAttributes are used in liveblogs to mark certain updates as key events or summary blocks
Callout element
Cartoon element
A record of a change, reocrds when and who performed the change
A channel is a set of fields that allows consumers of CAPI to publish to products (e.g.
A channel is a set of fields that allows consumers of CAPI to publish to products (e.g. Kindle, Editions, Newsletters) independently of publishing to the web.
If content is 'available' on a channel, we expose it to consumers looking for that channel.
Content made available on a channel can appear in CAPI _before_ it is published to the web.
Access to channel content is restricted to certain consumers (so we don't leak channel content to consumers looking for web content).
e.g.) The Kindle edition generator builds the Kindle issue using the channel markup information. It calls a CAPI endpoint which returns all content marked as 'isAvailable' on the Kindle channel. This includes both content that is published to the web, and content that has yet to be published.
This is useful because the Kindle, as a 'replica' of the print edition, often contains content we are not ready to publish to the web, and channels allow us to time the content's publication to different products (or even publish content exclusively to that product).
Code element
This struct represents a comment
The metadata relating to a comment element
This struct represents the content item
Content Atom element
Audit information about changes to content
ContentFields is a collection of fields for the content.
ContentFields is a collection of fields for the content. Fields are used to represent the furniture of the content that displays with the content or to trail the content.
values stored as fields are typically seen by the end user, in contrast to values stored as settings
ContentSettings is a collection of settings that update how content is displayed and what is shown alongside the the content.
ContentSettings is a collection of settings that update how content is displayed and what is shown alongside the the content.
values stored as settings are not seen by the end user directly.
Content types supported by flexible content
Content types supported by flexible content
An Element represents a fragment of content, This might be some text, an image, an embed etc.
An Element represents a fragment of content, This might be some text, an image, an embed etc. By building up a list of Elements a rich content body can be constructed flexibly.
The fields that configure the Element.
The supported Element types, the types inform what fields to expect and how the Element renders as HTML
The supported Element types, the types inform what fields to expect and how the Element renders as HTML
The event type describe the resource state
The event type describe the resource state
Expiry represents the ways content can expire
Details of how and if content id expired
This struct represents the bundle of identifiers that content can be looked up by.
A raw image, as opposed to wrapped in an Element with type = IMAGE.
A raw image, as opposed to wrapped in an Element with type = IMAGE. This is used for content thumbnails
The metadata relating to a image element.
The metadata relating to a image element. Fun fact: this is EXACTLY the same as ImageFields except the fields are in a different order.
Image metadata, this is a image specific subset of ElementFields.
Image metadata, this is a image specific subset of ElementFields.
TODO want to get rid of this type because it's exactly the same as ImageElementFields (apart from the order of fields). But this is a breaking change. Will have to wait until v2.
Instagram element
The metadata relating to an interactive element
The metadata relating to a membership element
Represents where the contant appears in the newspaper
Represents where the contant appears in the newspaper
The book is the physical printed thing (G1, G2 etc), the bookSection is the subsection of the book (news, business, obituries etc.) and the publication is the physical publication(The Guardian, The Observer). This information, along with the newspaperPageNumber and newspaperPublicationDate fields, is used to produce the daily newspaper navigation pages.
Offices supported by flexible content
Offices supported by flexible content
The metadata relating to a pull quote element
Recipe element
An external reference applied to content
An external reference applied to content
An external reference typically refers to a thing in another system or a real world thing. Examples include the isbn of a book the content is reviewing or a cricket match.
The metadata relating to a rich-link element
the rights profile of a content item
Represents a section.
Represents a section.
All tags exist within a section and the content's section is derived from the section of the most important tag.
The metadata relating to a map, document or table element
Represents a tag applied to content
Represents a tag applied to content
The id is the only required field, all the rest of the data can be looked up using the id.
Represents a Tag's application to content.
Represents a Tag's application to content.
Includes the Tag and if the tag <-> content relationship is marked as lead
Taxonomy represents the tags and references of a piece of content
The metadata relating to a text element
The metadata relating to a tweet element
this stucture represents the composer user
The metadata relating to a video element
Vine element
The metadata relating to a Witness element
Supported asset types