Using ThankView API to download videos

At the end of last year, my school used ThankView to record surprise videos for each graduating senior. We had 2-4 teachers record a short video reflecting on their relationship with the student and wishing them well. As I prepare to leave that job, I wanted to make sure the school had an archive of those videos outside of the ThankView website. I couldn’t figure out a good way to download all of the videos within the product (aside from one at a time). Lucikly, their API allows you to bulk download videos.

Here is the code I used to download all the videos into a directory called thankview:

import http.client
import urllib.request
import mimetypes
import json

conn = http.client.HTTPSConnection("")
payload = ''
headers = {
  'Content-Type': 'application/json',
  'Authorization': 'Bearer *********'

for page in range(6):
  uri = "/api/video?limit=100&page=" + str(page)
  conn.request("GET", uri, payload, headers)
  res = conn.getresponse()
  data =
  jsonResponse = json.loads(data)
  videos = jsonResponse["data"]["videos"]
  for video in videos:
    print("id: ", video["id"])
    print("title: ", video["title"])
    print("video_path: ", video["video_path"])
    filename = "thankview/" + str(video["id"]) + "-" + video["title"] + ".mp4"

Leave a Reply

Your email address will not be published. Required fields are marked *