API Documentation

ChangeLog

Metro Publisher Versions:

May 2021

  • social media data for person tags (see 'Additional Parameters for type: person' under PUT /{iid}/tags/{uuid}):
    • email
    • website
    • fb_username
    • twitter_username
    • instagram_username
    • linkedin_url

March 2021

  • new content type: Movie Review
  • new content type: Recipe
  • bug fixes

January 2021

  • bug fixes

September 2020

  • GET/PUT/PATCH event_status_type field for events (valid values: 'cancelled', 'postponed', 'rescheduled', 'moved_online')

January 2020

  • GET/PUT/PATCH canonical_url of content

August 2019

  • GET/PUT/PATCH header_image_url of content ("Wide Feature Image")

July 2019

  • GET/PUT/PATCH sponsored field of events (only applies to instances with the the Directory Add-On)

April 2019

  • GET/PUT/POST of directory listing images (only applies to instances with the the Directory Add-On)

February 2019

  • new content type: Content Roundup

May 2018

  • bug fix

June 2017

  • bug fixes and performance improvements

March 2017

  • Facebook and Twitter fields for locations

January 2017

  • bug fixes

September 2016

  • bug fixes

August 2016

  • performance optimization

July 2016

  • better error messages for XML errors in content
  • bug fixes
  • documentation updated

May 2016

  • accept integers as well as strings for fb_uid
  • bug fixes
  • documentation updated

MP 4.x

Path History

Path History resources are now also available for

MP 3.x

Intro

Metro Publisher 3 continues what was started in 2.14, now with regards to location types. Location types have been deprecated and converted to tags. Locations can now be tagged with any tag.

Also, object reviews (album, book, product) can now have more than one non-provider buy URL / link text attached to them.

Location Types -> Tags

Metro Publisher formerly supported a fixed list of location types, such as "Restaurant" ("food_drink::restaurant:"). Those location types have been converted to tags , and locations can be tagged with any tag now. This means that users of Metro Publisher can decide for themselves which types of locations they wish to add as tags and attach to their locations.

Buy URLs

Object reviews (album, book, product) used to have one non-provider buy url and link text. Now they can have a list. The fields *_buy_url and *_buy_link_text are deprecated. Please use the fields *_buy_urls now to get a list of dictionaries with the urls and link texts:

[{'link_text': 'Buy at SomePlace',
  'url': 'http://www.someplace.com/product/12345.html'},
 {'link_text': 'Buy at AnotherShop',
  'url': 'http://www.anothershop.com/p/12345.html'}]

Deprecated API Attributes

Locations

  • location_types

You can now use the tagged object resource to attach tags to locations.

Album/Book/Product Review

  • album_buy_url
  • album_buy_link_text
  • book_buy_url
  • book_buy_link_text
  • product_buy_url
  • product_buy_link_tex

You can now attach multiple buy urls to album, book and product reviews using the new attributes album_buy_urls, book_buy_urls and product_buy_urls.

Added API Attributes

Content

  • album_buy_urls: a list of dictionaries, each with url and link text
  • book_buy_urls: a list of dictionaries, each with url and link text
  • product_buy_urls: a list of dictionaries, each with url and link text

MP 2.14

Intro

Metro Publisher 2.14 contains various changes regarding tags. The old tag categories (i.e. 'Subject', 'Geography', etc.) have been deprecated to allow the creation of custom tag categories. The old event categories have been migrated into tags to allow the freedom of chosing any tag to describe the event instead of having a fixed list of available event categories.

New Attributes

Tags now have the following attributes:

  • last_name_or_title
  • first_name
  • type

The attribute type defines whether a tag is a person (type=='person') or not (type=='default'). Person tags have a first_name (which may be empty) as well as a last_name_or_title, default tags only have a last_name_or_title.

New API Resources

Tags can be grouped into custom categories. The resources to manage the custom categories are:

  • GET /{iid}/tags/categories
  • GET /{iid}/tags/categories/{uuid}
  • PUT /{iid}/tags/categories/{uuid}
  • PATCH /{iid}/tags/categories/{uuid}
  • GET /{iid}/tags/categories/{uuid}/tags
  • PUT /{iid}/tags/categories/{uuid}/tags

(see Tag Categories)

MP 2.13

A print_description for content (incl. events) as well as locations can be set and retrieved now.

Events and locations now have a sort_title.

MP 2.12

Intro

Metro Publisher 2.9 introduced Media Slots. Version 2.12 extends their availability by allowing multiple slots within the content, each containing a list of media.

New Attributes

Events now have the attribute email to specify an email address for contacting the event organizer.

Media of the type file can now be linked to an audio file from the Metro Publisher instance's file library.

New API Resources

Since every content object may now have more than one media slot, the following new resources allow retrieving information about all content slots as well as managing specific slots:

Deprecated API Resources

The following resources are replaced by slot-specific resources. Please use the new resources (see above) to manage slots and their media.

  • GET /{iid}/content/{uuid}/media
  • POST /{iid}/content/{uuid}/media
  • PUT /{iid}/content/{uuid}/media

MP 2.11

New Content Types

Metro Publisher 2.11 introduces new types of content:

  • three new types of reviews
    • album review
    • book review
    • product review
  • location roundup

The different types of review as well as the location roundup have different additional parameters (see Content).

New Attributes

Loations now have the attribute closed to specify whether the location is open for business or not.

Tags can now have the state internal. Internal tags are not visible on the public website and are only intended for internal use within the organization running the Metro Publisher instance.

New Tag Predicates

There are several new tag predicates available now besides 'authored' and 'describes'. Which predicates are available depends on what object is to be tagged.

See Table of tag predicates.

MP 2.10

Intro

In this release of Metro Publisher sections are enhanced to allow them to work similar to blogs. That means that blogs become deprecated though existing blogs in a Metro Publisher instance will remain available until they are merged manually (in the Metro Publisher Administration Interface) to sections.

New Attributes

Sections have a new attribute to define whether content within the section should show links to previous/next content within that section:

  • show_prev_next

Deprecated API Resources

  • GET /{iid}/blogs
  • POST /{iid}/blogs
  • GET /{iid}/blogs/{uuid}
  • PUT /{iid}/blogs/{uuid}
  • GET /{iid}/blogs/{uuid}/tags
  • GET /{iid}/blogs/{uuid}/tags/{predicate}

MP 2.9

Intro

Metro Publisher version 2.9 consists of the second milestone in an extensive overhaul of the content types. With this release, the remaining content types (articles, reviews, events) have Media Slots.

The content type video has been removed. The video content objects have been converted to the content type article.

Slideshows have been removed. Their slides have been merged into Media Slots (see also Slideshows).

Media Slots

Media Slots allow the Metro Publisher user to attach a variety of media to any content object. Media can be:

  • an internal link to an image in Metro Publisher's file library,
  • a link to an external asset or
  • embed code.

Each media slot has the following properties:

  • type (file, external, embed)
  • title
  • content
  • thumb

The different media slot types have additional properties.

Formerly attached videos or slideshows have been moved into a content object's media slots.

Content

Deprecated Attributes

  • all content types
    • feature_image_url
    • feature_image_caption
    • feature_image_alttext
    • feature_thumb_url
    • slideshow_uuid
    • video_uuid
  • video
    • cdn_url
    • youtube_code
    • video_type
    • use_youtube_thumb

The former feature_image of a content object has been moved into the first media slot of that content object.

The former feature_thumb of a content object has been renamed to 'teaser_image'.

The slides of a slideshow attached to a content object have been moved into the media slots.

The video attached to a content object has been moved into the media slots.

New Attributes

  • teaser_image_url

The former 'feature_thumb' of a content object has been renamed to teaser_image.

New API Resources

  • GET /{iid}/content/{uuid}/media
  • POST /{iid}/content/{uuid}/media
  • PUT /{iid}/content/{uuid}/media

The following API resource retrieves additional information about a content object:

In this release, the additional information contains just the public url for the object. Other information may follow in later releases.

Removed Functionality

  • content_type = 'video'

Video articles have been converted to articles. Their connected video information has been moved into the article's media slots.

Slideshows

Slideshows have been integrated into content objects. A slideshow's slides have been merged into the media slots of the content object the slideshow was connected to. Formerly unconnected slideshows have been converted to articles.

Deprecated API Resources

  • GET /{iid}/slideshows
  • GET /{iid}/slideshows/{uuid}
  • PUT /{iid}/slideshows/{uuid}
  • GET /{iid}/slideshows/{uuid}/slides
  • POST /{iid}/slideshows/{uuid}/slides
  • PUT /{iid}/slideshows/{uuid}/slides
  • GET /{iid}/slideshows/{uuid}/tags
  • GET /{iid}/slideshows/{uuid}/tags/{predicate}

Homepage

With MP 2.9, homepage headline and feature stories can be configured to be automatic using the following parameters:

  • auto: boolean
  • auto_max: limit for the number of stories
  • auto_tag_uuids: list of tag UUIDs (see Tag)

The following resources have been adjusted:

  • GET /{iid}/homepage/{uuid}/headline_stories
  • PUT /{iid}/homepage/{uuid}/headline_stories
  • GET /{iid}/homepage/{uuid}/featured_stories
  • PUT /{iid}/homepage/{uuid}/featured_stories