Profile: renderable

Profile Schema

The renderable profile indicates a document that contains the necessary information to be rendered visually.

Structure

Name Type Required? Explanation
layout Link[] Yes A list of asset links making up the visual layout of this document
nprDisplayType string No A reference to the type of rendering directive used by NPR for displaying this content
webPages Link[] Yes A list of external links to web pages containing additional information about this document
nprWebsitePath string No The relative path of this document on the NPR website
seoTitle string No The title of this document used on search engines
robotsNoIndex boolean No Flag indicating if this document, when represented as a web page, should be ignored by web crawlers
autoRefreshInterval integer No The number of seconds to wait before auto-refreshing the web page

This value MUST be greater than or equal to one
featuredAreaType string No A reference to the type of template for displaying featured content. The name of the template should indicate how many items should be displayed in the featured area, and in what configuration.

In order to satisfy the renderable profile, documents must have a “canonical” link in their webPages array. This is represented by an external link with the canonical rel.

"webPages": [
  {
    "href": "https://npr.org/2021/09/25/1040683057/crypto-trading-hamster-goxx-warren-buffet-s-p-500",
    "rels": [
      "canonical"
    ]
  }
]

For more information on the webPages attribute, see the publishable profile documentation.

Layout

renderable documents must also have a layout array. The layout array will contain zero or more asset links, linking to assets that should be used to visually represent this document. It must follow the following constraints:

  • layout links must start with #/
  • If the links in layout have a rels array, it may only contain the following values:
    • zone-topareastories - Indicates this asset appears in the “top area stories” zone when rendering this document
    • subnav - Indicates this asset is meant to serve the purpose of a subnavigation element when rendering this document
    • footer - Indicates this asset is meant to serve the purpose of a footer element when rendering this document
    • rail - Indicates this asset is meant to serve the purpose of a side rail element when rendering this document
    • alt - Indicates this asset is meant to display with an alternate style or visualization

Example renderable document

{
  "id": "12345",
  "profiles": [
    {
      "href": "/v1/profiles/renderable",
      "rels": [
        "type"
      ]
    },
    {
      "href": "/v1/profiles/document"
    }
  ],

  "assets": {
    "1111": {
      "id": "1111",
      "profiles": [
        {
          "href": "/v1/profiles/text",
          "rels": [
            "type"
          ]
        }
      ],

      "text": "On today's episode of Avengers Engineering, we discuss the flight systems powering Tony Stark's Iron Man suit."
    }
  },

  "webPages": [
    {
      "href": "https://www.npr.org/2021/01/01/iron-man-flight-systems",
      "rel": [
        "canonical"
      ]
    }
  ],

  "nprDisplayType" : "AggNews",
  "layout": [
    {
      "href": "#/assets/1111"
    }
  ],

  "nprWebsitePath": "/2021/01/01/iron-man-flight-systems",
  "seoTitle": "NPR | Iron Man Flight Systems",
  "robotsNoIndex": false,
  "featuredAreaType" : "three"
}

© 2024 npr