Introducción
Las API REST, como las API de la plataforma Brightcove, se pueden utilizar con cualquier idioma. La secuencia de comandos de Python incluida aquí es solo una muestra para mostrarle cómo se agrupan las solicitudes. Hay otra muestra de una solicitud GET simple (para la API de CMS) aquí.
Dependencias
Secuencia de comandos de Python
El siguiente código muestra el script. Tenga en cuenta que para usarlo, deberá proporcionar sus propios valores para lo siguiente:
- *** ID DE CUENTA AQUÍ **** (línea 8)
- *** ID DE CLIENTE AQUÍ **** (línea 9)
- *** CLIENTE SECRET AQUÍ **** (línea 10)
- *** TÍTULO DEL VIDEO AQUÍ *** (línea 27)
- *** URL FUENTE DEL VIDEO AQUÍ *** (línea 40)
#!/usr/bin/env python
import sys
import requests
import json
import argparse
pub_id = "***ACCOUNT ID HERE****"
client_id = "***CLIENT ID HERE****"
client_secret = "***CLIENT SECRET HERE****"
access_token_url = "https://oauth.brightcove.com/v4/access_token"
profiles_base_url = "https://ingestion.api.brightcove.com/v1/accounts/{pubid}/profiles"
def get_access_token():
access_token = None
r = requests.post(access_token_url, params="grant_type=client_credentials", auth=(client_id, client_secret), verify=False)
if r.status_code == 200:
access_token = r.json().get('access_token')
print(access_token)
return access_token
def create_video():
access_token = get_access_token()
headers = { 'Authorization': 'Bearer ' + access_token, "Content-Type": "application/json" }
url = ("https://cms.api.brightcove.com/v1/accounts/{pubid}/videos/").format(pubid=pub_id)
data = '{"name": "***VIDEO TITLE HERE***"}'
r = requests.post(url, headers=headers, data=data)
return r.json()
def submit_pbi(video_id):
access_token = get_access_token()
print access_token
headers = { 'Authorization': 'Bearer ' + access_token, "Content-Type": "application/json" }
url = ("https://ingest.api.brightcove.com/v1/accounts/{pubid}/videos/{videoid}/ingest-requests").format(pubid=pub_id, videoid=video_id)
print url
data = '''{
"master": { "url": "****SOURCE VIDEO URL HERE***" }
}'''
r = requests.post(url, headers=headers, data=data)
print r.headers
return r.json()
v = create_video()
print v
print submit_pbi(v['id'])