diff --git a/.github/workflows/create-documentation-pr.yml b/.github/workflows/create-documentation-pr.yml new file mode 100644 index 0000000..d3019af --- /dev/null +++ b/.github/workflows/create-documentation-pr.yml @@ -0,0 +1,27 @@ +name: Create documentation PR +on: + # Trigger the workflow on pull requests targeting the main branch + pull_request: + types: [assigned, unassigned, opened, reopened, synchronize, edited, labeled, unlabeled, edited, closed] + branches: + - main + +jobs: + create_documentation_pr: + if: github.event.action != 'closed' + + runs-on: ubuntu-latest + + steps: + - name: Check out current repository code + uses: actions/checkout@v2 + + - name: Create the documentation pull request + uses: apivideo/api.video-create-readme-file-pull-request-action@main + with: + source-file-path: "README.md" + destination-repository: apivideo/api.video-documentation + destination-path: sdks/api-clients + destination-filename: apivideo-nodejs-client.md + pat: "${{ secrets.PAT }}" + \ No newline at end of file diff --git a/.gitignore b/.gitignore index 888cc16..4c08475 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,4 @@ lib .openapi-generator-ignore node_modules licenseInfo -post-generate.sh -documentation.md \ No newline at end of file +post-generate.sh \ No newline at end of file diff --git a/README.md b/README.md index a5f8c3e..d18036d 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,11 @@ + [![badge](https://img.shields.io/twitter/follow/api_video?style=social)](https://twitter.com/intent/follow?screen_name=api_video)   [![badge](https://img.shields.io/github/stars/apivideo/api.video-nodejs-client?style=social)](https://github.com/apivideo/api.video-nodejs-client)   [![badge](https://img.shields.io/discourse/topics?server=https%3A%2F%2Fcommunity.api.video)](https://community.api.video) ![](https://github.com/apivideo/.github/blob/main/assets/apivideo_banner.png)

api.video Node.js client

[api.video](https://api.video) is the video infrastructure for product builders. Lightning fast video APIs for integrating, scaling, and managing on-demand & low latency live streaming features in your app. -# Table of contents +## Table of contents - [Project description](#project-description) - [Getting started](#getting-started) @@ -30,14 +31,26 @@ - [Public endpoints](#public-endpoints) - [Have you gotten use from this API client?](#have-you-gotten-use-from-this-api-client-) - [Contribution](#contribution) + + + +## Project description api.video's Java Node.js is a lightweight client built in `TypeScript` that streamlines the coding process. Chunking files is handled for you, as is pagination and refreshing your tokens. -# Getting started +## Getting started -## Installation +### Installation With `npm`: ``` npm install @api.video/nodejs-client --save @@ -48,11 +61,11 @@ npm install @api.video/nodejs-client --save yarn add @api.video/nodejs-client ``` -## Migration +### Migration -If you're coming from [@api.video/nodejs-sdk](https://github.com/apivideo/nodejs-sdk) make sure to read our [Migration guide](./docs/MIGRATE.md) first. +If you're coming from [@api.video/nodejs-sdk](https://github.com/apivideo/nodejs-sdk) make sure to read our [Migration guide](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/MIGRATE.md) first. -## Development +### Development To build and compile the typescript sources to javascript use: ``` @@ -60,7 +73,7 @@ npm install npm run build ``` -## Code sample +### Code sample ```typescript const ApiVideoClient = require('@api.video/nodejs-client'); @@ -85,190 +98,190 @@ const ApiVideoClient = require('@api.video/nodejs-client'); })(); ``` -# Documentation +## Documentation -## API Endpoints +### API Endpoints -### AnalyticsApi +#### AnalyticsApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**getLiveStreamsPlays()**](docs/api/AnalyticsApi.md#getLiveStreamsPlays) | Get play events for live stream | **GET** /analytics/live-streams/plays -[**getVideosPlays()**](docs/api/AnalyticsApi.md#getVideosPlays) | Get play events for video | **GET** /analytics/videos/plays +[**getLiveStreamsPlays()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/AnalyticsApi.md#getLiveStreamsPlays) | Get play events for live stream | **GET** /analytics/live-streams/plays +[**getVideosPlays()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/AnalyticsApi.md#getVideosPlays) | Get play events for video | **GET** /analytics/videos/plays -### CaptionsApi +#### CaptionsApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**upload()**](docs/api/CaptionsApi.md#upload) | Upload a caption | **POST** /videos/{videoId}/captions/{language} -[**get()**](docs/api/CaptionsApi.md#get) | Retrieve a caption | **GET** /videos/{videoId}/captions/{language} -[**update()**](docs/api/CaptionsApi.md#update) | Update a caption | **PATCH** /videos/{videoId}/captions/{language} -[**delete()**](docs/api/CaptionsApi.md#delete) | Delete a caption | **DELETE** /videos/{videoId}/captions/{language} -[**list()**](docs/api/CaptionsApi.md#list) | List video captions | **GET** /videos/{videoId}/captions +[**upload()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/CaptionsApi.md#upload) | Upload a caption | **POST** /videos/{videoId}/captions/{language} +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/CaptionsApi.md#get) | Retrieve a caption | **GET** /videos/{videoId}/captions/{language} +[**update()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/CaptionsApi.md#update) | Update a caption | **PATCH** /videos/{videoId}/captions/{language} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/CaptionsApi.md#delete) | Delete a caption | **DELETE** /videos/{videoId}/captions/{language} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/CaptionsApi.md#list) | List video captions | **GET** /videos/{videoId}/captions -### ChaptersApi +#### ChaptersApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**upload()**](docs/api/ChaptersApi.md#upload) | Upload a chapter | **POST** /videos/{videoId}/chapters/{language} -[**get()**](docs/api/ChaptersApi.md#get) | Retrieve a chapter | **GET** /videos/{videoId}/chapters/{language} -[**delete()**](docs/api/ChaptersApi.md#delete) | Delete a chapter | **DELETE** /videos/{videoId}/chapters/{language} -[**list()**](docs/api/ChaptersApi.md#list) | List video chapters | **GET** /videos/{videoId}/chapters +[**upload()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/ChaptersApi.md#upload) | Upload a chapter | **POST** /videos/{videoId}/chapters/{language} +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/ChaptersApi.md#get) | Retrieve a chapter | **GET** /videos/{videoId}/chapters/{language} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/ChaptersApi.md#delete) | Delete a chapter | **DELETE** /videos/{videoId}/chapters/{language} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/ChaptersApi.md#list) | List video chapters | **GET** /videos/{videoId}/chapters -### LiveStreamsApi +#### LiveStreamsApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**create()**](docs/api/LiveStreamsApi.md#create) | Create live stream | **POST** /live-streams -[**get()**](docs/api/LiveStreamsApi.md#get) | Retrieve live stream | **GET** /live-streams/{liveStreamId} -[**update()**](docs/api/LiveStreamsApi.md#update) | Update a live stream | **PATCH** /live-streams/{liveStreamId} -[**delete()**](docs/api/LiveStreamsApi.md#delete) | Delete a live stream | **DELETE** /live-streams/{liveStreamId} -[**list()**](docs/api/LiveStreamsApi.md#list) | List all live streams | **GET** /live-streams -[**uploadThumbnail()**](docs/api/LiveStreamsApi.md#uploadThumbnail) | Upload a thumbnail | **POST** /live-streams/{liveStreamId}/thumbnail -[**deleteThumbnail()**](docs/api/LiveStreamsApi.md#deleteThumbnail) | Delete a thumbnail | **DELETE** /live-streams/{liveStreamId}/thumbnail +[**create()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#create) | Create live stream | **POST** /live-streams +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#get) | Retrieve live stream | **GET** /live-streams/{liveStreamId} +[**update()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#update) | Update a live stream | **PATCH** /live-streams/{liveStreamId} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#delete) | Delete a live stream | **DELETE** /live-streams/{liveStreamId} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#list) | List all live streams | **GET** /live-streams +[**uploadThumbnail()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#uploadThumbnail) | Upload a thumbnail | **POST** /live-streams/{liveStreamId}/thumbnail +[**deleteThumbnail()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/LiveStreamsApi.md#deleteThumbnail) | Delete a thumbnail | **DELETE** /live-streams/{liveStreamId}/thumbnail -### PlayerThemesApi +#### PlayerThemesApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**create()**](docs/api/PlayerThemesApi.md#create) | Create a player | **POST** /players -[**get()**](docs/api/PlayerThemesApi.md#get) | Retrieve a player | **GET** /players/{playerId} -[**update()**](docs/api/PlayerThemesApi.md#update) | Update a player | **PATCH** /players/{playerId} -[**delete()**](docs/api/PlayerThemesApi.md#delete) | Delete a player | **DELETE** /players/{playerId} -[**list()**](docs/api/PlayerThemesApi.md#list) | List all player themes | **GET** /players -[**uploadLogo()**](docs/api/PlayerThemesApi.md#uploadLogo) | Upload a logo | **POST** /players/{playerId}/logo -[**deleteLogo()**](docs/api/PlayerThemesApi.md#deleteLogo) | Delete logo | **DELETE** /players/{playerId}/logo +[**create()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#create) | Create a player | **POST** /players +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#get) | Retrieve a player | **GET** /players/{playerId} +[**update()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#update) | Update a player | **PATCH** /players/{playerId} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#delete) | Delete a player | **DELETE** /players/{playerId} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#list) | List all player themes | **GET** /players +[**uploadLogo()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#uploadLogo) | Upload a logo | **POST** /players/{playerId}/logo +[**deleteLogo()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/PlayerThemesApi.md#deleteLogo) | Delete logo | **DELETE** /players/{playerId}/logo -### UploadTokensApi +#### UploadTokensApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**createToken()**](docs/api/UploadTokensApi.md#createToken) | Generate an upload token | **POST** /upload-tokens -[**getToken()**](docs/api/UploadTokensApi.md#getToken) | Retrieve upload token | **GET** /upload-tokens/{uploadToken} -[**deleteToken()**](docs/api/UploadTokensApi.md#deleteToken) | Delete an upload token | **DELETE** /upload-tokens/{uploadToken} -[**list()**](docs/api/UploadTokensApi.md#list) | List all active upload tokens | **GET** /upload-tokens +[**createToken()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/UploadTokensApi.md#createToken) | Generate an upload token | **POST** /upload-tokens +[**getToken()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/UploadTokensApi.md#getToken) | Retrieve upload token | **GET** /upload-tokens/{uploadToken} +[**deleteToken()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/UploadTokensApi.md#deleteToken) | Delete an upload token | **DELETE** /upload-tokens/{uploadToken} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/UploadTokensApi.md#list) | List all active upload tokens | **GET** /upload-tokens -### VideosApi +#### VideosApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**create()**](docs/api/VideosApi.md#create) | Create a video object | **POST** /videos -[**upload()**](docs/api/VideosApi.md#upload) | Upload a video | **POST** /videos/{videoId}/source -[**uploadWithUploadToken()**](docs/api/VideosApi.md#uploadWithUploadToken) | Upload with an delegated upload token | **POST** /upload -[**get()**](docs/api/VideosApi.md#get) | Retrieve a video object | **GET** /videos/{videoId} -[**update()**](docs/api/VideosApi.md#update) | Update a video object | **PATCH** /videos/{videoId} -[**delete()**](docs/api/VideosApi.md#delete) | Delete a video object | **DELETE** /videos/{videoId} -[**list()**](docs/api/VideosApi.md#list) | List all video objects | **GET** /videos -[**uploadThumbnail()**](docs/api/VideosApi.md#uploadThumbnail) | Upload a thumbnail | **POST** /videos/{videoId}/thumbnail -[**pickThumbnail()**](docs/api/VideosApi.md#pickThumbnail) | Set a thumbnail | **PATCH** /videos/{videoId}/thumbnail -[**getStatus()**](docs/api/VideosApi.md#getStatus) | Retrieve video status and details | **GET** /videos/{videoId}/status +[**create()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#create) | Create a video object | **POST** /videos +[**upload()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#upload) | Upload a video | **POST** /videos/{videoId}/source +[**uploadWithUploadToken()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#uploadWithUploadToken) | Upload with an delegated upload token | **POST** /upload +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#get) | Retrieve a video object | **GET** /videos/{videoId} +[**update()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#update) | Update a video object | **PATCH** /videos/{videoId} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#delete) | Delete a video object | **DELETE** /videos/{videoId} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#list) | List all video objects | **GET** /videos +[**uploadThumbnail()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#uploadThumbnail) | Upload a thumbnail | **POST** /videos/{videoId}/thumbnail +[**pickThumbnail()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#pickThumbnail) | Set a thumbnail | **PATCH** /videos/{videoId}/thumbnail +[**getStatus()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/VideosApi.md#getStatus) | Retrieve video status and details | **GET** /videos/{videoId}/status -### WatermarksApi +#### WatermarksApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**upload()**](docs/api/WatermarksApi.md#upload) | Upload a watermark | **POST** /watermarks -[**delete()**](docs/api/WatermarksApi.md#delete) | Delete a watermark | **DELETE** /watermarks/{watermarkId} -[**list()**](docs/api/WatermarksApi.md#list) | List all watermarks | **GET** /watermarks +[**upload()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WatermarksApi.md#upload) | Upload a watermark | **POST** /watermarks +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WatermarksApi.md#delete) | Delete a watermark | **DELETE** /watermarks/{watermarkId} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WatermarksApi.md#list) | List all watermarks | **GET** /watermarks -### WebhooksApi +#### WebhooksApi Method | Description | HTTP request ------------- | ------------- | ------------- -[**create()**](docs/api/WebhooksApi.md#create) | Create Webhook | **POST** /webhooks -[**get()**](docs/api/WebhooksApi.md#get) | Retrieve Webhook details | **GET** /webhooks/{webhookId} -[**delete()**](docs/api/WebhooksApi.md#delete) | Delete a Webhook | **DELETE** /webhooks/{webhookId} -[**list()**](docs/api/WebhooksApi.md#list) | List all webhooks | **GET** /webhooks - - - -## Models - - - [AccessToken](docs/model/AccessToken.md) - - [AdditionalBadRequestErrors](docs/model/AdditionalBadRequestErrors.md) - - [AnalyticsData](docs/model/AnalyticsData.md) - - [AnalyticsPlays400Error](docs/model/AnalyticsPlays400Error.md) - - [AnalyticsPlaysResponse](docs/model/AnalyticsPlaysResponse.md) - - [AuthenticatePayload](docs/model/AuthenticatePayload.md) - - [BadRequest](docs/model/BadRequest.md) - - [BytesRange](docs/model/BytesRange.md) - - [Caption](docs/model/Caption.md) - - [CaptionsListResponse](docs/model/CaptionsListResponse.md) - - [CaptionsUpdatePayload](docs/model/CaptionsUpdatePayload.md) - - [Chapter](docs/model/Chapter.md) - - [ChaptersListResponse](docs/model/ChaptersListResponse.md) - - [Link](docs/model/Link.md) - - [LiveStream](docs/model/LiveStream.md) - - [LiveStreamAssets](docs/model/LiveStreamAssets.md) - - [LiveStreamCreationPayload](docs/model/LiveStreamCreationPayload.md) - - [LiveStreamListResponse](docs/model/LiveStreamListResponse.md) - - [LiveStreamSession](docs/model/LiveStreamSession.md) - - [LiveStreamSessionClient](docs/model/LiveStreamSessionClient.md) - - [LiveStreamSessionDevice](docs/model/LiveStreamSessionDevice.md) - - [LiveStreamSessionLocation](docs/model/LiveStreamSessionLocation.md) - - [LiveStreamSessionReferrer](docs/model/LiveStreamSessionReferrer.md) - - [LiveStreamSessionSession](docs/model/LiveStreamSessionSession.md) - - [LiveStreamUpdatePayload](docs/model/LiveStreamUpdatePayload.md) - - [Metadata](docs/model/Metadata.md) - - [Model403ErrorSchema](docs/model/Model403ErrorSchema.md) - - [NotFound](docs/model/NotFound.md) - - [Pagination](docs/model/Pagination.md) - - [PaginationLink](docs/model/PaginationLink.md) - - [PlayerSessionEvent](docs/model/PlayerSessionEvent.md) - - [PlayerTheme](docs/model/PlayerTheme.md) - - [PlayerThemeAssets](docs/model/PlayerThemeAssets.md) - - [PlayerThemeCreationPayload](docs/model/PlayerThemeCreationPayload.md) - - [PlayerThemeUpdatePayload](docs/model/PlayerThemeUpdatePayload.md) - - [PlayerThemesListResponse](docs/model/PlayerThemesListResponse.md) - - [Quality](docs/model/Quality.md) - - [RefreshTokenPayload](docs/model/RefreshTokenPayload.md) - - [RestreamsRequestObject](docs/model/RestreamsRequestObject.md) - - [RestreamsResponseObject](docs/model/RestreamsResponseObject.md) - - [TokenCreationPayload](docs/model/TokenCreationPayload.md) - - [TokenListResponse](docs/model/TokenListResponse.md) - - [UploadToken](docs/model/UploadToken.md) - - [Video](docs/model/Video.md) - - [VideoAssets](docs/model/VideoAssets.md) - - [VideoClip](docs/model/VideoClip.md) - - [VideoCreationPayload](docs/model/VideoCreationPayload.md) - - [VideoSession](docs/model/VideoSession.md) - - [VideoSessionClient](docs/model/VideoSessionClient.md) - - [VideoSessionDevice](docs/model/VideoSessionDevice.md) - - [VideoSessionLocation](docs/model/VideoSessionLocation.md) - - [VideoSessionOs](docs/model/VideoSessionOs.md) - - [VideoSessionReferrer](docs/model/VideoSessionReferrer.md) - - [VideoSessionSession](docs/model/VideoSessionSession.md) - - [VideoSource](docs/model/VideoSource.md) - - [VideoSourceLiveStream](docs/model/VideoSourceLiveStream.md) - - [VideoSourceLiveStreamLink](docs/model/VideoSourceLiveStreamLink.md) - - [VideoStatus](docs/model/VideoStatus.md) - - [VideoStatusEncoding](docs/model/VideoStatusEncoding.md) - - [VideoStatusEncodingMetadata](docs/model/VideoStatusEncodingMetadata.md) - - [VideoStatusIngest](docs/model/VideoStatusIngest.md) - - [VideoStatusIngestReceivedParts](docs/model/VideoStatusIngestReceivedParts.md) - - [VideoThumbnailPickPayload](docs/model/VideoThumbnailPickPayload.md) - - [VideoUpdatePayload](docs/model/VideoUpdatePayload.md) - - [VideoWatermark](docs/model/VideoWatermark.md) - - [VideosListResponse](docs/model/VideosListResponse.md) - - [Watermark](docs/model/Watermark.md) - - [WatermarksListResponse](docs/model/WatermarksListResponse.md) - - [Webhook](docs/model/Webhook.md) - - [WebhooksCreationPayload](docs/model/WebhooksCreationPayload.md) - - [WebhooksListResponse](docs/model/WebhooksListResponse.md) - - -## Authorization - -### API key +[**create()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WebhooksApi.md#create) | Create Webhook | **POST** /webhooks +[**get()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WebhooksApi.md#get) | Retrieve Webhook details | **GET** /webhooks/{webhookId} +[**delete()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WebhooksApi.md#delete) | Delete a Webhook | **DELETE** /webhooks/{webhookId} +[**list()**](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/api/WebhooksApi.md#list) | List all webhooks | **GET** /webhooks + + + +### Models + + - [AccessToken](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AccessToken.md) + - [AdditionalBadRequestErrors](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AdditionalBadRequestErrors.md) + - [AnalyticsData](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AnalyticsData.md) + - [AnalyticsPlays400Error](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AnalyticsPlays400Error.md) + - [AnalyticsPlaysResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AnalyticsPlaysResponse.md) + - [AuthenticatePayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/AuthenticatePayload.md) + - [BadRequest](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/BadRequest.md) + - [BytesRange](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/BytesRange.md) + - [Caption](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Caption.md) + - [CaptionsListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/CaptionsListResponse.md) + - [CaptionsUpdatePayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/CaptionsUpdatePayload.md) + - [Chapter](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Chapter.md) + - [ChaptersListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/ChaptersListResponse.md) + - [Link](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Link.md) + - [LiveStream](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStream.md) + - [LiveStreamAssets](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamAssets.md) + - [LiveStreamCreationPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamCreationPayload.md) + - [LiveStreamListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamListResponse.md) + - [LiveStreamSession](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSession.md) + - [LiveStreamSessionClient](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSessionClient.md) + - [LiveStreamSessionDevice](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSessionDevice.md) + - [LiveStreamSessionLocation](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSessionLocation.md) + - [LiveStreamSessionReferrer](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSessionReferrer.md) + - [LiveStreamSessionSession](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamSessionSession.md) + - [LiveStreamUpdatePayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/LiveStreamUpdatePayload.md) + - [Metadata](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Metadata.md) + - [Model403ErrorSchema](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Model403ErrorSchema.md) + - [NotFound](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/NotFound.md) + - [Pagination](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Pagination.md) + - [PaginationLink](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PaginationLink.md) + - [PlayerSessionEvent](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerSessionEvent.md) + - [PlayerTheme](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerTheme.md) + - [PlayerThemeAssets](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerThemeAssets.md) + - [PlayerThemeCreationPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerThemeCreationPayload.md) + - [PlayerThemeUpdatePayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerThemeUpdatePayload.md) + - [PlayerThemesListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/PlayerThemesListResponse.md) + - [Quality](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Quality.md) + - [RefreshTokenPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/RefreshTokenPayload.md) + - [RestreamsRequestObject](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/RestreamsRequestObject.md) + - [RestreamsResponseObject](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/RestreamsResponseObject.md) + - [TokenCreationPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/TokenCreationPayload.md) + - [TokenListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/TokenListResponse.md) + - [UploadToken](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/UploadToken.md) + - [Video](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Video.md) + - [VideoAssets](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoAssets.md) + - [VideoClip](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoClip.md) + - [VideoCreationPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoCreationPayload.md) + - [VideoSession](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSession.md) + - [VideoSessionClient](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionClient.md) + - [VideoSessionDevice](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionDevice.md) + - [VideoSessionLocation](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionLocation.md) + - [VideoSessionOs](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionOs.md) + - [VideoSessionReferrer](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionReferrer.md) + - [VideoSessionSession](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSessionSession.md) + - [VideoSource](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSource.md) + - [VideoSourceLiveStream](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSourceLiveStream.md) + - [VideoSourceLiveStreamLink](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoSourceLiveStreamLink.md) + - [VideoStatus](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoStatus.md) + - [VideoStatusEncoding](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoStatusEncoding.md) + - [VideoStatusEncodingMetadata](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoStatusEncodingMetadata.md) + - [VideoStatusIngest](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoStatusIngest.md) + - [VideoStatusIngestReceivedParts](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoStatusIngestReceivedParts.md) + - [VideoThumbnailPickPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoThumbnailPickPayload.md) + - [VideoUpdatePayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoUpdatePayload.md) + - [VideoWatermark](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideoWatermark.md) + - [VideosListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/VideosListResponse.md) + - [Watermark](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Watermark.md) + - [WatermarksListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/WatermarksListResponse.md) + - [Webhook](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/Webhook.md) + - [WebhooksCreationPayload](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/WebhooksCreationPayload.md) + - [WebhooksListResponse](https://github.com/apivideo/api.video-nodejs-client/blob/main/docs/model/WebhooksListResponse.md) + + +### Authorization + +#### API key Most endpoints required to be authenticated using the API key mechanism described in our [documentation](https://docs.api.video/reference#authentication). The access token generation mechanism is automatically handled by the client. @@ -278,7 +291,7 @@ All you have to do is provide an API key when instantiating the ApiVideoClient: const client = new ApiVideoClient({ apiKey: "YOUR_API_KEY" }); ``` -### Get the access token +#### Get the access token If you need to access the access-token value obtained using the API key, you can use the getAccessToken() method of the client: ```js @@ -286,20 +299,20 @@ const client = new ApiVideoClient({ apiKey: "YOUR_API_KEY" }); const accessToken = await client.getAccessToken(); ``` -### Public endpoints +#### Public endpoints Some endpoints don't require authentication. These one can be called with an ApiVideoClient instantiated without API key: ```js const client = new ApiVideoClient(); ``` -# Have you gotten use from this API client? +## Have you gotten use from this API client? Please take a moment to leave a star on the client ⭐ This helps other users to find the clients and also helps us understand which clients are most popular. Thank you! -# Contribution +## Contribution Since this API client is generated from an OpenAPI description, we cannot accept pull requests made directly to the repository. If you want to contribute, you can open a pull request on the repository of our [client generator](https://github.com/apivideo/api-client-generator). Otherwise, you can also simply open an issue detailing your need on this repository. \ No newline at end of file