Référence de l’API

Objets

Les objets renvoyés par l’API. Les champs marqués « obligatoire » sont toujours présents, éventuellement à null.

Organization

ChampTypeDétails
idobligatoirestringUUID
nameobligatoirestring—
slugobligatoirestring—
statusobligatoire"active" | "suspended" | "closed"—
allowedOriginsobligatoirestring[]—
limitsobligatoireobject—
limits.maxStorageBytesobligatoireinteger | null—
limits.maxUploadBytesobligatoireinteger | null—
limits.maxVideoDurationSecondsobligatoireinteger | null—
apiKeyobligatoireobject—
apiKey.prefixobligatoirestring—
apiKey.scopesobligatoirestring[]—
apiKey.expiresAtobligatoirestring | nullDate et heure ISO 8601

Usage

ChampTypeDétails
fromobligatoirestring—
toobligatoirestring—
storageobligatoireobject—
storage.reservedBytesobligatoireintegerMesuré à l’instant : vidéos stockées et envois en cours
totalsobligatoireobject—
totals.uploadedBytesobligatoireinteger—
totals.encodingSecondsobligatoireinteger—
totals.deliveredBytesobligatoireinteger—
totals.segmentRequestsobligatoireinteger—
totals.playbackTokensobligatoireinteger—
totals.apiRequestsobligatoireinteger—
daysobligatoireobject[]—
days[].dayobligatoirestring—
days[].uploadedBytesobligatoireinteger—
days[].encodingSecondsobligatoireinteger—
days[].deliveredBytesobligatoireinteger—
days[].segmentRequestsobligatoireinteger—
days[].playbackTokensobligatoireinteger—
days[].apiRequestsobligatoireinteger—
notesobligatoirestring[]Ce qui est mesuré et à quelle fréquence

Video

ChampTypeDétails
idobligatoirestringUUID
titleobligatoirestring—
descriptionobligatoirestring | null—
statusobligatoire"pending_upload" | "uploaded" | "queued" | "processing" | "ready" | "failed" | "cancelled" | "deleting" | "deleted"—
externalRefobligatoirestring | nullVotre propre référence (par exemple l’identifiant de la leçon)
durationSecondsobligatoireinteger | null—
widthobligatoireinteger | null—
heightobligatoireinteger | null—
renditionsobligatoirestring[]Par exemple ["1080p", "720p"]
captionsstring[]Langues des sous-titres (réponses portant sur une seule vidéo)
playbackDisabledobligatoireboolean—
errorobligatoirestring | nullExplication exploitable quand le statut est failed
createdAtobligatoirestringDate et heure ISO 8601
updatedAtobligatoirestringDate et heure ISO 8601

Upload

ChampTypeDétails
idobligatoirestringUUID
videoIdobligatoirestringUUID
statusobligatoire"pending" | "completed" | "cancelled" | "expired"—
typeobligatoire"single" | "multipart"—
methodobligatoire"PUT"—
contentTypeobligatoirestring—
sizeobligatoireinteger—
receivedSizeobligatoireinteger | null—
expiresAtobligatoirestringDate et heure ISO 8601
completedAtobligatoirestring | nullDate et heure ISO 8601
createdAtobligatoirestringDate et heure ISO 8601
urlstringEnvoi unique : URL signée pour le PUT (valable 1 h)
headersobjectEn-têtes à envoyer avec le PUT
partSizeinteger—
partCountinteger—
partsobject[]—
parts[].partNumberobligatoireinteger—
parts[].urlobligatoirestring—
uploadedPartsobject[]—
uploadedParts[].partNumberobligatoireinteger—
uploadedParts[].etagobligatoirestring—
uploadedParts[].sizeobligatoireinteger—

PlaybackToken

ChampTypeDétails
tokenobligatoirestring—
sessionIdobligatoirestringSert à révoquer le lien
expiresAtobligatoireintegerSecondes UNIX
embedUrlobligatoirestringÀ placer dans une <iframe> ; ajoutez &start=<secondes> pour reprendre
hlsUrlobligatoirestringPour les lecteurs natifs

PlaybackSession

ChampTypeDétails
idobligatoirestringUUID
videoIdobligatoirestringUUID
externalRefobligatoirestring | nullRéférence externe de la vidéo
viewerRefobligatoirestring | nullVotre référence pseudonyme de l’apprenant, si vous en avez envoyé une
createdAtobligatoirestring—
expiresAtobligatoirestring—
revokedAtobligatoirestring | null—
progressobligatoireobject | nullNull tant que le lecteur n’a rien envoyé. Mesure du navigateur : indicative
progress.startedAtobligatoirestring | null—
progress.lastEventAtobligatoirestring—
progress.durationSecondsobligatoirenumber—
progress.lastPositionobligatoirenumberPoint de reprise
progress.maxPositionobligatoirenumber—
progress.watchedSecondsobligatoirenumberTemps de lecture, borné par le temps réel (vitesse 2× au plus)
progress.coveragePercentobligatoireintegerPart de la vidéo lue au moins une fois (100 tranches)
progress.completedobligatoirebooleancoveragePercent a atteint 90
progress.completedAtobligatoirestring | null—
progress.eventsobligatoireinteger—
progress.errorsobligatoireinteger—

Webhook

ChampTypeDétails
idobligatoirestringUUID
urlobligatoirestring—
descriptionobligatoirestring | null—
eventsobligatoire("video.uploaded" | "video.processing" | "video.ready" | "video.failed" | "video.deleted" | "organization.quota_warning" | "playback.completed")[]—
statusobligatoire"active" | "disabled"—
disabledReasonobligatoirestring | null—
consecutiveFailuresobligatoireinteger—
previousSecretExpiresAtobligatoirestring | nullDate et heure ISO 8601
createdAtobligatoirestringDate et heure ISO 8601
updatedAtobligatoirestringDate et heure ISO 8601
secretstringSecret de signature, renvoyé uniquement à la création et au remplacement

WebhookDelivery

ChampTypeDétails
idobligatoirestringUUID
eventIdobligatoirestringUUID
eventTypeobligatoirestring—
statusobligatoire"pending" | "sending" | "succeeded" | "dead"—
attemptsobligatoireinteger—
nextAttemptAtobligatoirestring | nullDate et heure ISO 8601
lastStatusCodeobligatoireinteger | null—
lastErrorobligatoirestring | null—
deliveredAtobligatoirestring | nullDate et heure ISO 8601
createdAtobligatoirestringDate et heure ISO 8601

VideoUsage

ChampTypeDétails
videoIdobligatoirestringUUID
fromobligatoirestring—
toobligatoirestring—
totalsobligatoireobject—
totals.deliveredBytesobligatoireinteger—
totals.requestsobligatoireinteger—
totals.playbackSessionsobligatoireinteger—
engagementobligatoireobjectMesuré par le lecteur : indicatif, jamais facturé
engagement.sessionsStartedobligatoireinteger—
engagement.sessionsCompletedobligatoireintegerSessions ayant atteint 90 % de la vidéo
engagement.averageCoveragePercentobligatoireinteger—
engagement.watchedSecondsobligatoirenumber—
daysobligatoireobject[]—
days[].dayobligatoirestring—
days[].deliveredBytesobligatoireinteger—
days[].requestsobligatoireinteger—

ApiKeyRotation

ChampTypeDétails
apiKeyobligatoireobject—
apiKey.keyobligatoirestringNouvelle clé secrète, affichée une seule fois
apiKey.prefixobligatoirestring—
apiKey.scopesobligatoirestring[]—
previousKeyobligatoireobject—
previousKey.prefixobligatoirestring—
previousKey.expiresAtobligatoirestringDate et heure ISO 8601