Aperçu: API du système de livraison

Dans cette rubrique, vous obtiendrez une vue d'ensemble des API du système de distribution, qui permettent la gestion et le déploiement d'un groupe de fichiers, appelé référentiel. Ce système a été configuré comme une zone de stockage pour les fichiers liés au lecteur, comme les fichiers JavaScript et CSS pour les plugins personnalisés.

Aperçu

Les fichiers associés au système de livraison sont gérés via des API REST et éventuellement via Git. Ces fichiers sont livrés à joueurs.brightcove.net soit via un appel API ou un "git push".

Si vous n'êtes pas passé par le Pas à pas: API du système de livraison , il est fortement suggéré de commencer par là. Vous obtiendrez la configuration de la sécurité, apprendrez quelques-unes des bases du système, puis serez prêt à approfondir ici.

Voir aussi le Référence API.

API REST du système de livraison

Les API du système de livraison sont centrées sur les référentiels, également appelés référentiels. Vous pouvez gérer les dépôts via un groupe d'API REST qui vous permettent d'ajouter, d'obtenir et de répertorier vos dépôts. Vous pouvez également utiliser des appels d'API REST pour manipuler des fichiers dans des dépôts.

Vous pouvez utiliser l'outil de ligne de commande curl pour utiliser les API REST. Les API REST renvoient des réponses au format JSON contenant les informations de réussite suivantes :

  • name: Le nom du dépôt. C'est le même que le nom trouvé dans les URL de l'API REST.
  • URL_publique : L'URL de base où les fichiers de dépôt peuvent être vus.

le Pas à pas: Système de livraison fournit un guide pratique sur l'utilisation des API du système de livraison.

Authentification

Vous pouvez vous autoriser en utilisant soit Jetons d'accès OAuth ou via l'authentification de base en utilisant votre nom d'utilisateur et votre mot de passe Brightcove. Les jetons d'accès OAuth standard doivent être utilisés pour toute utilisation par programmation des API, mais la route d'authentification de base est beaucoup plus facile pour l'utilisation de la ligne de commande et la mise en route.

Nous utiliserons l'authentification de base dans le Pas à pas exemples. Si vous souhaitez utiliser des jetons d'accès à la place, modifiez :

    --user $EMAIL

à:

    --header "Authorization: Bearer $ACCESS_TOKEN"

Réponses d'erreur d'API

Il existe un certain nombre de réponses d'erreur possibles qui peuvent être renvoyées au format JSON en cas de problème avec un appel d'API REST :

  • Si vous essayez d'appeler une API qui n'existe pas, y compris en mal orthographiant des appels d'API existants, vous obtiendrez un code d'état de 404 et un message utile sur ce que vous avez peut-être mal fait.
  • Si votre appel ne peut pas être authentifié ou autorisé, vous obtiendrez un code d'état 403. Essayez à nouveau de consulter le guide OAuth pour vous assurer que vous disposez d'un jeton d'accès valide.
  • Si vous essayez d'utiliser une méthode autre que GET ou PUT, la réponse contiendra un code d'état 405.
  • S'il y a un problème avec le traitement de votre demande, vous obtiendrez un code d'état 500 et une réponse d'erreur Brightcove standard.

La réponse d'erreur Brightcove standard mentionnée ci-dessus est une réponse JSON contenant error_code et les propriétés du message. Le code d'erreur sera l'un des suivants :

  • INVALID_LOGIN_CREDENTIALS: le nom d'utilisateur et le mot de passe donnés lors de l'utilisation de l'authentification de base n'étaient pas valides
  • ACCESS_TOKEN_ERROR: le jeton d'accès donné n'était pas valide
  • INVALID_API_CALL: l'appel d'API n'a pas été formaté correctement
  • NOT_FOUND: l'appel API ne pointait pas vers une ressource connue ou n'était pas formaté correctement
  • :NO_PUT_CONTENTS Un formulaire en plusieurs parties avec une clé de contenu doit être utilisé pour METTRE un fichier repo
  • CREATE_REPO_ERROR: une erreur s'est produite lors de la création d'un dépôt
  • GET_REPO_ERROR: une erreur s'est produite lors de l'obtention d'un dépôt
  • GET_REPOS_ERROR: une erreur s'est produite lors de l'obtention de tous les dépôts
  • UNCAUGHT_ERROR: une erreur non détectée a fait échouer les choses
  • UNKNOWN_ERROR: une erreur qui n'a pas de code d'erreur associé s'est produite

Contraintes