-
-
Notifications
You must be signed in to change notification settings - Fork 12
API: Content
API Terminology:
-
Program
: A tv show -
Page
: An episode of a tv show -
Playlist
: A season, or another collection of videos -
Video
: The video stream of an episode
A list of programs can be scraped of the homepage of the channel from a.program-overview__link
. We can find a title
and a path
.
Examples:
The path
of the program can be used to generate a URL that we can fetch. On that page, we can extract a JSON from a div
with an attribute data-hero
.
The same JSON is available trough an API, but we need to know the programUuid
then.
- GET
https://www.vier.be/{path}
- GET
https://www.vier.be/api/program/{programUuid}
{
"data": {
"id": "66c7e887-b468-4e2b-b0f1-534ffc51c327",
"title": "Auwch_",
"subtitle": "",
"description": "Auwch_ draait ook in dit 2de seizoen rond alledaagse pijnlijke en g\u00eanante situaties waarin Ben Segers en Axel Daeseleire voortdurend verzeild geraken. Met de gekende ongemakkelijke stiltes tot gevolg\u2026",
"label": "",
"link": "/auwch",
"images": {
"hero": "https://images.viervijfzes.be/www.vier.be/production/meta/tnwallpaper3840x2160auwchs3-q5hc5b.jpg?auto=format&crop=edges&dpr=2&fit=crop&h=780&ixlib=php-1.1.0&q=95&w=1440&s=6424ebacd202c98c36e1f93f9e04896a",
"mobile": "https://images.viervijfzes.be/www.vier.be/production/2020-02/auwchzp-q5hc5w.jpg?auto=format&crop=edges&dpr=2&fit=crop&h=530&ixlib=php-1.1.0&q=95&w=375&s=789a0652a41fea77ee7e59554de76a3c",
"poster": "https://images.viervijfzes.be/www.vier.be/production/2020-02/auwchmp-q5hc5r.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=38200a4598b02fcf3fb28db0ffac92a6",
"teaser": "https://images.viervijfzes.be/www.vier.be/production/meta/tnwallpaper3840x2160auwchs3-q5hc5b.jpg?auto=format&fit=crop&h=452&ixlib=php-1.1.0&q=85&w=682&s=48ad79e81dd385a7108dede9365a5208"
},
"header": {
"title": "Trailer nieuw seizoen",
"video": []
},
"pageInfo": {
"site": "vier",
"url": "https://www.vier.be/auwch",
"nodeId": "365",
"title": "Auwch_",
"description": "Auwch_ draait ook in dit 2de seizoen rond alledaagse pijnlijke en g\u00eanante situaties waarin Ben Segers en Axel Daeseleire voortdurend verzeild geraken. Met de gekende ongemakkelijke stiltes tot gevolg\u2026",
"type": "program",
"program": "Auwch_",
"programId": "365",
"programUuid": "66c7e887-b468-4e2b-b0f1-534ffc51c327",
"programKey": "auwch",
"tags": [
"Auwch_"
],
"publishDate": 1452784345,
"unpublishDate": 0,
"author": "[email protected]",
"notificationsScore": 0
},
"playlists": [
{
"episodes": [
{
"autoplay": false,
"cimTag": "vid.tvi.ep.vod.free",
"createdDate": 1584045900,
"description": "<p>De foemp gaat trouwen met Livia. Axel en Ben kunnen natuurlijk niet ontbreken op zijn vrijgezellenfeestje, ook al is dat dik tegen de zin van Axel.</p>\r\n",
"duration": 1501,
"embedCta": null,
"enablePreroll": true,
"episodeNumber": 5,
"episodeTitle": "S3 - Aflevering 5",
"hasProductPlacement": true,
"image": "https://images.viervijfzes.be/www.vier.be/production/meta/auwch-y03-e05-f0269534mp400072208still004-q72m4w.jpg?auto=format&fit=max&h=720&ixlib=php-1.1.0&q=65&w=1280&s=380f5f672e083e32082f6ed4b081526d",
"isProtected": true,
"isSeekable": false,
"isStreaming": false,
"link": "/video/auwch/auwch-s3/auwch-s3-aflevering-5",
"midrollOffsets": [
808
],
"pageInfo": {
"site": "vier",
"url": "https://www.vier.be/video/auwch/auwch-s3/auwch-s3-aflevering-5",
"nodeId": "30723",
"title": "Auwch_ - S3 - Aflevering 5",
"description": "De foemp gaat trouwen met Livia. Axel en Ben kunnen natuurlijk niet ontbreken op zijn vrijgezellenfeestje, ook al is dat dik tegen de zin van Axel.",
"type": "video-long_form",
"program": "Auwch_",
"programId": "365",
"programUuid": "66c7e887-b468-4e2b-b0f1-534ffc51c327",
"programKey": "auwch",
"tags": [
"Auwch_",
"Volledige Aflevering"
],
"publishDate": 1584045900,
"unpublishDate": 1672605900,
"author": "[email protected]",
"notificationsScore": 17
},
"pageUuid": "1abd0018-ccc5-4635-871c-fd3082639919",
"parentalRating": "12+",
"path": "",
"program": {
"title": "Auwch_",
"poster": "https://images.viervijfzes.be/www.vier.be/production/2020-02/auwchmp-q5hc5r.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=38200a4598b02fcf3fb28db0ffac92a6"
},
"seasonNumber": 3,
"seekableFrom": 1584047401,
"title": "Auwch_ - S3 - Aflevering 5",
"type": "long_form",
"unpublishDate": 1672605900,
"videoUuid": "b73bfbba-11aa-4a01-a614-066a1251e3a2",
"whatsonId": "10137607007678527"
},
# ... (more episodes)
],
"id": "42a6f9fc-a451-44f3-9b9d-b9a38f1bebe8",
"link": "/video/auwch/auwch-s3",
"pageInfo": {
"site": "vier",
"url": "https://www.vier.be/video/auwch/auwch-s3",
"nodeId": "30207",
"title": "Auwch_ - Seizoen 3",
"description": "Auwch_ draait ook in het 3e seizoen rond alledaagse pijnlijke en g\u00eanante situaties waarin Ben Segers en Axel Daeseleire voortdurend verzeild geraken. Met de gekende ongemakkelijke stiltes tot gevolg\u2026",
"type": "playlist",
"program": "Auwch_",
"programId": "365",
"programUuid": "66c7e887-b468-4e2b-b0f1-534ffc51c327",
"programKey": "auwch",
"tags": [],
"publishDate": 1580728083,
"unpublishDate": 0,
"author": "[email protected]",
"notificationsScore": 0
},
"title": "Seizoen 3"
},
# ... (more seasons)
],
"social": {
"facebook": "https://www.facebook.com/Auwch-703879279714068/?fref=ts",
"hashtag": "auwch",
"instagram": "https://instagram.com/opVIER",
"twitter": "https://twitter.com/@opVIER"
}
}
}
Examples:
-
https://www.vier.be/api/program/66c7e887-b468-4e2b-b0f1-534ffc51c327
-
https://www.vijf.be/api/program/ce04df1b-4966-4aa3-82f3-2e76a5408a70
-
https://www.zestv.be/api/program/d82bd1c3-1897-4165-9249-4c31192ad4a3
When we know the programUuid
, we can also use the backend API to fetch some details. It contains less data though.
- GET
https://api.viervijfzes.be/content/{programUuid}
(authenticated)
{
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/tnwallpaper3840x2160auwchs3-q5hc5b.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=c78feafe09676e4eace0fbd3065551b2"
},
"playlists": {
"M": {
"42a6f9fc-a451-44f3-9b9d-b9a38f1bebe8": {
"M": {
"season": {
"N": "3"
},
"last": {
"M": {
"duration": {
"N": "1618"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/auwch-y03-e06-f0269535mp400143505still002-q7fpnb.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=e92aba74bc6498caebbc07bfe6d0ebfb"
},
"uuid": {
"S": "8625f38c-97c0-4cd0-a216-cdeb18a128ab"
},
"url": {
"S": "/video/auwch/auwch-s3/auwch-s3-aflevering-6"
}
}
},
"uuid": {
"S": "42a6f9fc-a451-44f3-9b9d-b9a38f1bebe8"
},
"url": {
"S": "/video/auwch/auwch-s3"
},
"first": {
"M": {
"duration": {
"N": "1616"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/vlcsnap-2020-02-13-10h09m53s409-q5mzh1.png?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=2e47562baeaf78ebec6e7a9f41e57fc8"
},
"uuid": {
"S": "5e9ef01e-70dd-436d-85ad-83fa0adbfb94"
},
"url": {
"S": "/video/auwch/auwch-s3/auwch-s3-aflevering-1"
}
}
}
}
},
"76f042d1-1cc1-46f6-9b39-61763c89330c": {
"M": {
"season": {
"N": "1"
},
"last": {
"M": {
"duration": {
"N": "0"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/afl10-q0fwl4.png?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=842124e6bdd60ac4c952a8bf3dfac9cf"
},
"uuid": {
"S": "11b729b0-783b-49c9-85d6-c6ea361802a2"
},
"url": {
"S": "/video/auwch/auwch-seizoen-1/auwch-s1-aflevering-10"
}
}
},
"uuid": {
"S": "76f042d1-1cc1-46f6-9b39-61763c89330c"
},
"url": {
"S": "/video/auwch/auwch-seizoen-1"
},
"first": {
"M": {
"duration": {
"N": "0"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/afl1-q0fvws.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=2dd61f816b4a36ce72fdee2abdd7fb70"
},
"uuid": {
"S": "1843a82f-774b-4dff-bc0c-33f97e203053"
},
"url": {
"S": "/video/auwch/auwch-seizoen-1/auwch-s1-aflevering-1"
}
}
}
}
},
"353ba363-84f8-4225-ba85-566756b210ef": {
"M": {
"season": {
"N": "2"
},
"last": {
"M": {
"duration": {
"N": "1610"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/koen-os0ux1-pk192f.png?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=8355ea5c19095edd18dec8a892e684f4"
},
"uuid": {
"S": "74446180-8206-45ae-914c-1c1363e9a1c2"
},
"url": {
"S": "/video/auwch/seizoen-2/auwch-s2-auwch-2-10"
}
}
},
"uuid": {
"S": "353ba363-84f8-4225-ba85-566756b210ef"
},
"url": {
"S": "/video/auwch/seizoen-2"
},
"first": {
"M": {
"duration": {
"N": "1514"
},
"image": {
"S": "https://images.viervijfzes.be/www.vier.be/production/meta/afl1auwch-os0the-pk14ya.jpg?auto=format&fit=crop&h=590&ixlib=php-1.1.0&q=95&w=410&s=f4d7b660b76c340491c50befa98407f1"
},
"uuid": {
"S": "043c4c1a-8118-4e67-b443-86a6e241ecb7"
},
"url": {
"S": "/video/auwch/seizoen-2/auwch-s2-auwch-2-1"
}
}
}
}
}
}
},
"description": {
"S": "Auwch_ draait ook in dit 2de seizoen rond alledaagse pijnlijke en gênante situaties waarin Ben Segers en Axel Daeseleire voortdurend verzeild geraken. Met de gekende ongemakkelijke stiltes tot gevolg…"
},
"label": {
"S": "Auwch_"
},
"category": {
"M": {
"id": {
"S": "51821"
},
"label": {
"S": "Serie Komedie"
}
}
},
"uuid": {
"S": "66c7e887-b468-4e2b-b0f1-534ffc51c327"
},
"url": {
"S": "/auwch"
}
}
Examples:
- https://api.viervijfzes.be/content/66c7e887-b468-4e2b-b0f1-534ffc51c327
- https://api.viervijfzes.be/content/ce04df1b-4966-4aa3-82f3-2e76a5408a70
- https://api.viervijfzes.be/content/d82bd1c3-1897-4165-9249-4c31192ad4a3
From the Program info, we can get a list of Episodes. Each episode has a pageUuid
. The same information already exists in the Program info.
- GET
https://www.vier.be/api/video/{pageUuid}
{
"autoplay": false,
"cimTag": "vid.tvi.ep.vod.free",
"createdDate": 1584045900,
"description": "\u003Cp\u003EDe foemp gaat trouwen met Livia. Axel en Ben kunnen natuurlijk niet ontbreken op zijn vrijgezellenfeestje, ook al is dat dik tegen de zin van Axel.\u003C\/p\u003E\r\n",
"duration": 1501,
"embedCta": null,
"enablePreroll": true,
"episodeNumber": 5,
"episodeTitle": "S3 - Aflevering 5",
"hasProductPlacement": true,
"image": "https:\/\/images.viervijfzes.be\/www.vier.be\/production\/meta\/auwch-y03-e05-f0269534mp400072208still004-q72m4w.jpg?auto=format\u0026fit=max\u0026h=720\u0026ixlib=php-1.1.0\u0026q=65\u0026w=1280\u0026s=380f5f672e083e32082f6ed4b081526d",
"isProtected": true,
"isSeekable": false,
"isStreaming": false,
"link": "\/video\/auwch\/auwch-s3\/auwch-s3-aflevering-5",
"midrollOffsets": [
808
],
"pageInfo": {
"site": "vier",
"url": "https:\/\/www.vier.be\/video\/auwch\/auwch-s3\/auwch-s3-aflevering-5",
"nodeId": "30723",
"title": "Auwch_ - S3 - Aflevering 5",
"description": "De foemp gaat trouwen met Livia. Axel en Ben kunnen natuurlijk niet ontbreken op zijn vrijgezellenfeestje, ook al is dat dik tegen de zin van Axel.",
"type": "video-long_form",
"program": "Auwch_",
"programId": "365",
"programUuid": "66c7e887-b468-4e2b-b0f1-534ffc51c327",
"programKey": "auwch",
"tags": [
"Auwch_",
"Volledige Aflevering"
],
"publishDate": 1584045900,
"unpublishDate": 1672605900,
"author": "[email protected]",
"notificationsScore": 17
},
"pageUuid": "1abd0018-ccc5-4635-871c-fd3082639919",
"parentalRating": "12+",
"path": "",
"program": {
"title": "Auwch_",
"poster": "https:\/\/images.viervijfzes.be\/www.vier.be\/production\/2020-02\/auwchmp-q5hc5r.jpg?auto=format\u0026fit=crop\u0026h=590\u0026ixlib=php-1.1.0\u0026q=95\u0026w=410\u0026s=38200a4598b02fcf3fb28db0ffac92a6"
},
"seasonNumber": 3,
"seekableFrom": 1584047401,
"title": "Auwch_ - S3 - Aflevering 5",
"type": "long_form",
"unpublishDate": 1672605900,
"videoUuid": "b73bfbba-11aa-4a01-a614-066a1251e3a2",
"whatsonId": "10137607007678527"
}
Example:
To get the actual video stream, we need the videoUuid
and make the same backend call as the Program info. This videoUuid
is available in the Page info.
-
https://api.viervijfzes.be/content/{videoUuid}
(authenticated)
{
"video": {
"S": "https://stream1-vod.cdn1.sbs.prd.telenet-ops.be/geo/AUWCH_/S3/volledigeafleveringen/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/AUWCH__3_5_F0269534/AUWCH__3_5_F0269534.m3u8"
}
}
Example:
-
GET https://www.vier.be/api/content_tree (no auth needed)
-
GET https://api.viervijfzes.be/notifications (
authorization
header required)
[
{
"nid": 30655,
"notification_created": 1583784914,
"site": "vier",
"created": 1583784846,
"id": "cc2f225f-873b-4b5e-b02b-dc9ef5ecc390",
"image": "https://images.viervijfzes.be/www.vier.be/production/meta/f0271354-otmxf10220618still004-q6s0di.jpg?auto=format&fit=crop&h=60&ixlib=php-1.1.0&q=90&w=60&s=8722dc9e3db66c278633717c730e9ec7",
"label": null,
"program": "6f8eae82-4508-41e9-81ec-8f2e3dcc7fec",
"program_title": "Topdokters",
"program_category": "Human Interest",
"score": 7,
"title": "Dr. Ombelet is een dierenliefhebber “Ontsnapte beestjes belandden op autostrade\"",
"type": "video",
"url": "https://www.vier.be/video/topdokters/dr-ombelet-is-een-dierenliefhebber-ontsnapte-beestjes-belandden-op-autostrade",
"video_type": "short_form",
"video_uuid": "55ff7360-cd13-4eb4-ac72-e5cebc10d4b1",
"read": false,
"seen": false
},
{
"nid": 30663,
"notification_created": 1583782514,
"site": "vier",
"created": 1583782500,
"id": "08ec347b-0247-4285-8670-c569b57a434a",
"image": "https://images.viervijfzes.be/www.vier.be/production/meta/tdafl07gradev1mov00400720still015-q6x369.jpg?auto=format&fit=crop&h=60&ixlib=php-1.1.0&q=90&w=60&s=4da466058804e163920b1c10eb4af401",
"label": null,
"program": "6f8eae82-4508-41e9-81ec-8f2e3dcc7fec",
"program_title": "Topdokters",
"program_category": "Human Interest",
"score": 17,
"title": "Topdokters - S7 - Aflevering 7",
"type": "video",
"url": "https://www.vier.be/video/topdokters/topdokters-s7/topdokters-s7-aflevering-7",
"video_type": "long_form",
"video_uuid": "51ef9e4c-9b1f-47aa-adb7-3aa5c7155882",
"read": false,
"seen": false
}
# ...
]
-
POST https://api.viervijfzes.be/email/change
- step
- uuid
- old_email
- new_email
-
POST https://api.viervijfzes.be/email/get
- id
-
POST https://api.viervijfzes.be/email/sync
-
POST https://api.viervijfzes.be/email/valid
-
POST https://api.viervijfzes.be/reset
- Domain
- Url
-
POST https://api.viervijfzes.be/search
- query
- sites ('vier', 'vijf', 'zes')
- page
- mode: 'byDate'
-
POST https://api.viervijfzes.be/webform
- FormId
- Created
- UserName: Wieni
- Blob
-
PUT https://api2.viervijfzes.be/selligent/lists/
- options
-
POST https://api2.viervijfzes.be/selligent/newsletter/
Deze add-on wordt niet ondersteund door SBS Belgium, en wordt aangeboden 'as is', zonder enige garantie.
User documentation:
Development: