Page MenuHomePhabricator

[Feeds] Implement Content Service aggregating endpoint for feeds
Closed, ResolvedPublic3 Estimated Story Points

Description

Implement an endpoint which calls the microservices. Start with the ones we have available for now. Add more later.

Request:

/feed/featured/{year}/{month}/{day}

Response:

The response should have a list of cards, which each card containing a card type and the actual data (usually page metadata, like title, description, lead image thumbnail URL).

Example:

http://localhost:6927/en.wikipedia.org/v1/feed/featured/2016/05/30

{
  "tfa": {
    "title": "The Bartered Bride",
    "thumbnail": {
      "60": "http://upload.wikimedia.org/wikipedia/en/thumb/4/4e/Prodana_Nevesta_Cover_1919.JPG/60px-Prodana_Nevesta_Cover_1919.JPG",
      "120": "http://upload.wikimedia.org/wikipedia/en/thumb/4/4e/Prodana_Nevesta_Cover_1919.JPG/120px-Prodana_Nevesta_Cover_1919.JPG",
      "320": "http://upload.wikimedia.org/wikipedia/en/thumb/4/4e/Prodana_Nevesta_Cover_1919.JPG/238px-Prodana_Nevesta_Cover_1919.JPG"
    },
    "description": "comic opera in three acts by the Czech composer Bedřich Smetana",
    "extract": "The Bartered Bride (Czech: Prodaná nevěsta, The Sold Bride) is a comic opera in three acts by the Czech composer Bedřich Smetana, to a libretto by Karel Sabina. The work is generally regarded as a major contribution towards the development of Czech music. It was composed during the period 1863–66, and first performed at the Provisional Theatre, Prague, on 30 May 1866 in a two-act format with spoken dialogue.\nSet in a country village and with realistic characters, it tells the story of how, after a late surprise revelation, true love prevails over the combined efforts of ambitious parents and a scheming marriage broker.\nThe opera was not immediately successful, and was revised and extended in the following four years."
  },
  "mostread": {
    "date": "2016-05-29Z",
    "articles": [
      {
        "views": 235480,
        "rank": 3,
        "title": "X-Men:_Apocalypse",
        "pageid": 43530847,
        "thumbnail": {
          "60": "http://upload.wikimedia.org/wikipedia/commons/thumb/9/98/Englefield_House_-_geograph.org.uk_-_1824880.jpg/60px-Englefield_House_-_geograph.org.uk_-_1824880.jpg",
          "120": "http://upload.wikimedia.org/wikipedia/commons/thumb/9/98/Englefield_House_-_geograph.org.uk_-_1824880.jpg/120px-Englefield_House_-_geograph.org.uk_-_1824880.jpg",
          "320": "http://upload.wikimedia.org/wikipedia/commons/thumb/9/98/Englefield_House_-_geograph.org.uk_-_1824880.jpg/320px-Englefield_House_-_geograph.org.uk_-_1824880.jpg"
        },
        "normalizedtitle": "X-Men: Apocalypse",
        "description": "2016 superhero film"
      }
      /* many more ... */
    ]
  },
  /* Future entries: */
  "random": "Good random article here",
  "news": "Articles in the news here",
  "image": "Today's featured image here",
  "video": "Today's featured video here"
}

Event Timeline

bearND renamed this task from [Feeds] Implement aggregating endpoint for feeds to [Feeds] Implement Content Service aggregating endpoint for feeds.May 27 2016, 6:48 PM

Change 291763 had a related patch set uploaded (by Mholloway):
WIP: Aggregated feed endpoint

https://gerrit.wikimedia.org/r/291763

Change 291763 merged by jenkins-bot:
Aggregated feed endpoint

https://gerrit.wikimedia.org/r/291763