Youtube API : impossible to use

It should work with this.

I currently use this stripped down snippet to upload videos (tho sometimes the lack of error handling shows)

def upload_to_youtube(filename):
    # init youtube login
    storage = Storage(os.path.join(PROJECT_PATH, CREDENTIALS_NAME))
    credentials = storage.get()
    logger.info("YouTube auth loaded")

    YOUTUBE_API_SERVICE_NAME = "youtube"
    YOUTUBE_API_VERSION = "v3"
    youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION,
                    http=credentials.authorize(httplib2.Http()))

    logger.info("YouTube login successful")

    # init video data
    insert_request = youtube.videos().insert(
        part="snippet,status",
        body={
            'snippet': {
                'title': "title"
                'description': "description",
                'tags': ["a", "b"],
                'categoryId': 22,
            },
            'status': {
                'privacyStatus': "public",
            }
        },
        # chunksize=-1 ->  entire file will be uploaded in a single
        media_body=MediaFileUpload(filename, chunksize=1024*1024,
                                   resumable=True)
    )

    # start uploading
    logger.info("Uploading file...")
    response = None
    while response is None:
        try:
            status, response = insert_request.next_chunk()
            if status:
                progress = status.progress()
                logger.info("Upload status: %s", progress)
                upload_to_youtube.update_state(meta={
                    'progress': progress * 100})
            else:
                if 'id' in response:
                    logger.info("Upload successful, http://youtu.be/%s",
                                response['id'])
                    return response
                else:
                    logger.error("The upload failed with an "
                                 "unexpected response: %s", response)
                    return None
        except HttpError as e:
            logger.error(e)
    return None
/r/Python Thread