{"id":18498055,"url":"https://github.com/apivideo/api.video-go-client","last_synced_at":"2026-03-05T08:32:33.800Z","repository":{"id":40564585,"uuid":"343812557","full_name":"apivideo/api.video-go-client","owner":"apivideo","description":"The official Go client library for api.video ","archived":false,"fork":false,"pushed_at":"2025-01-27T13:57:14.000Z","size":22049,"stargazers_count":37,"open_issues_count":2,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-01-13T19:55:47.145Z","etag":null,"topics":["go","go-api-client","golang","hls","streaming","video","video-sharing","video-streaming"],"latest_commit_sha":null,"homepage":"https://api.video","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apivideo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-02T15:01:49.000Z","updated_at":"2026-01-02T19:17:26.000Z","dependencies_parsed_at":"2023-10-13T05:29:01.441Z","dependency_job_id":"652a5927-27c5-4939-9725-948ed137b74f","html_url":"https://github.com/apivideo/api.video-go-client","commit_stats":null,"previous_names":["apivideo/go-api-client"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/apivideo/api.video-go-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apivideo%2Fapi.video-go-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apivideo%2Fapi.video-go-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apivideo%2Fapi.video-go-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apivideo%2Fapi.video-go-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apivideo","download_url":"https://codeload.github.com/apivideo/api.video-go-client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apivideo%2Fapi.video-go-client/sbom","scorecard":{"id":202853,"data":{"date":"2025-08-11","repo":{"name":"github.com/apivideo/api.video-go-client","commit":"485dddd89297e624924c9af30f90d585066a773e"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.3,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/15 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/create-documentation-pr.yml:1","Warn: no topLevel permission defined: .github/workflows/create-release-from-changelog.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Warn: no topLevel permission defined: .github/workflows/update-documentation.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":9,"reason":"binaries present in source code","details":["Warn: binary detected: test-assets/10m.mp4.part.a:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/create-documentation-pr.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/create-documentation-pr.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/create-documentation-pr.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/create-documentation-pr.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/create-release-from-changelog.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/create-release-from-changelog.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/create-release-from-changelog.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/create-release-from-changelog.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-documentation.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/update-documentation.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/update-documentation.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/apivideo/api.video-go-client/update-documentation.yml/main?enable=pin","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T23:07:25.562Z","repository_id":40564585,"created_at":"2025-08-16T23:07:25.562Z","updated_at":"2025-08-16T23:07:25.562Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30115938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T08:19:04.902Z","status":"ssl_error","status_checked_at":"2026-03-05T08:17:37.148Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go","go-api-client","golang","hls","streaming","video","video-sharing","video-streaming"],"created_at":"2024-11-06T13:37:25.737Z","updated_at":"2026-03-05T08:32:33.760Z","avatar_url":"https://github.com/apivideo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\u003cdocumentation_excluded\u003e--\u003e\n[![badge](https://img.shields.io/twitter/follow/api_video?style=social)](https://twitter.com/intent/follow?screen_name=api_video) \u0026nbsp; [![badge](https://img.shields.io/github/stars/apivideo/api.video-go-client?style=social)](https://github.com/apivideo/api.video-go-client) \u0026nbsp; [![badge](https://img.shields.io/discourse/topics?server=https%3A%2F%2Fcommunity.api.video)](https://community.api.video)\n![](https://github.com/apivideo/.github/blob/main/assets/apivideo_banner.png)\n\u003ch1 align=\"center\"\u003eapi.video Go client\u003c/h1\u003e\n\n[api.video](https://api.video) is the video infrastructure for product builders. Lightning fast video APIs for integrating, scaling, and managing on-demand \u0026 low latency live streaming features in your app.\n\n## Table of contents\n\n- [Project description](#project-description)\n- [Getting started](#getting-started)\n  - [Installation](#installation)\n  - [Code sample](#code-sample)\n- [Documentation](#documentation)\n  - [API Endpoints](#api-endpoints)\n    - [Analytics](#analytics)\n    - [Captions](#captions)\n    - [Chapters](#chapters)\n    - [LiveStreams](#livestreams)\n    - [PlayerThemes](#playerthemes)\n    - [Summaries](#summaries)\n    - [Tags](#tags)\n    - [UploadTokens](#uploadtokens)\n    - [Videos](#videos)\n    - [Watermarks](#watermarks)\n    - [Webhooks](#webhooks)\n  - [Models](#models)\n- [Have you gotten use from this API client?](#have-you-gotten-use-from-this-api-client-)\n- [Contribution](#contribution)\n\u003c!--\u003c/documentation_excluded\u003e--\u003e\n\u003c!--\u003cdocumentation_only\u003e\n---\ntitle: Go API client\nmeta: \n  description: The official Go API client for api.video. [api.video](https://api.video/) is the video infrastructure for product builders. Lightning fast video APIs for integrating, scaling, and managing on-demand \u0026 low latency live streaming features in your app.\n---\n\n# api.video Go API client\n\n[api.video](https://api.video/) is the video infrastructure for product builders. Lightning fast video APIs for integrating, scaling, and managing on-demand \u0026 low latency live streaming features in your app.\n\u003c/documentation_only\u003e--\u003e\n\n## Project description\n\napi.video's Go client streamlines the coding process. Chunking files is handled for you, as is pagination and refreshing your tokens.\n\n## Getting started\n\n### Installation\n```bash\ngo get github.com/apivideo/api.video-go-client\n```\n\n\n### Code sample\n\nFor a more advanced usage you can checkout the rest of the documentation in the [docs directory](https://github.com/apivideo/api.video-go-client/blob/main/docs)\n\n```golang\npackage main\n\nimport (\n    \"fmt\"\n    \"os\"\n    apivideosdk \"github.com/apivideo/api.video-go-client\"\n)\n\nfunc main() {\n    //Connect to production environment\n    client := apivideosdk.ClientBuilder(\"YOUR_API_KEY\").Build()\n\n    // if you rather like to use the sandbox environment:\n    // client := apivideosdk.SandboxClientBuilder(\"YOU_SANDBOX_API_KEY\").Build()\n\n\n    //List Videos\n    //First create the url options for searching\n    opts := apivideosdk.VideosApiListRequest{}.\n        CurrentPage(1).\n        PageSize(25).\n        SortBy(\"publishedAt\").\n        SortOrder(\"desc\")\n\n    //Then call the List endpoint with the options\n    result, err := client.Videos.List(opts)\n\n    if err != nil {\n        fmt.Println(err)\n    }\n\n    for _, video := range result.Data {\n        fmt.Printf(\"%s\\n\", video.VideoId)\n        fmt.Printf(\"%s\\n\", *video.Title)\n    }\n\n\n    //Upload a video\n    //First create a container\n    create, err := client.Videos.Create(apivideosdk.VideoCreationPayload{Title: \"My video title\"})\n\n    if err != nil {\n        fmt.Println(err)\n    }\n\n    //Then open the video file\n    videoFile, err := os.Open(\"path/to/video.mp4\")\n\n    if err != nil {\n        fmt.Println(err)\n    }\n\n    //Finally upload your video to the container with the videoId\n    uploadedVideo, err := client.Videos.UploadFile(create.VideoId, videoFile)\n\n    if err != nil {\n        fmt.Println(err)\n    }\n\n\n    //And get the assets\n    fmt.Printf(\"%s\\n\", *uploadedVideo.Assets.Hls)\n    fmt.Printf(\"%s\\n\", *uploadedVideo.Assets.Iframe)\n}\n```\n\n## Documentation\n\n### API Endpoints\n\nAll URIs are relative to *https://ws.api.video*\n\n\n#### Analytics\n\n\n##### Retrieve an instance of the Analytics API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nanalyticsApi := client.Analytics\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**GetAggregatedMetrics**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Analytics.md#GetAggregatedMetrics) | **Get** `/data/metrics/{metric}/{aggregation}` | Retrieve aggregated metrics\n[**GetMetricsBreakdown**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Analytics.md#GetMetricsBreakdown) | **Get** `/data/buckets/{metric}/{breakdown}` | Retrieve metrics in a breakdown of dimensions\n[**GetMetricsOverTime**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Analytics.md#GetMetricsOverTime) | **Get** `/data/timeseries/{metric}` | Retrieve metrics over time\n\n\n#### Captions\n\n\n##### Retrieve an instance of the Captions API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\ncaptionsApi := client.Captions\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Upload**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Captions.md#Upload) | **Post** `/videos/{videoId}/captions/{language}` | Upload a caption\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Captions.md#Get) | **Get** `/videos/{videoId}/captions/{language}` | Retrieve a caption\n[**Update**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Captions.md#Update) | **Patch** `/videos/{videoId}/captions/{language}` | Update a caption\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Captions.md#Delete) | **Delete** `/videos/{videoId}/captions/{language}` | Delete a caption\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Captions.md#List) | **Get** `/videos/{videoId}/captions` | List video captions\n\n\n#### Chapters\n\n\n##### Retrieve an instance of the Chapters API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nchaptersApi := client.Chapters\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Upload**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Chapters.md#Upload) | **Post** `/videos/{videoId}/chapters/{language}` | Upload a chapter\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Chapters.md#Get) | **Get** `/videos/{videoId}/chapters/{language}` | Retrieve a chapter\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Chapters.md#Delete) | **Delete** `/videos/{videoId}/chapters/{language}` | Delete a chapter\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Chapters.md#List) | **Get** `/videos/{videoId}/chapters` | List video chapters\n\n\n#### LiveStreams\n\n\n##### Retrieve an instance of the LiveStreams API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nliveStreamsApi := client.LiveStreams\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Create**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#Create) | **Post** `/live-streams` | Create live stream\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#Get) | **Get** `/live-streams/{liveStreamId}` | Retrieve live stream\n[**Update**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#Update) | **Patch** `/live-streams/{liveStreamId}` | Update a live stream\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#Delete) | **Delete** `/live-streams/{liveStreamId}` | Delete a live stream\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#List) | **Get** `/live-streams` | List all live streams\n[**UploadThumbnail**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#UploadThumbnail) | **Post** `/live-streams/{liveStreamId}/thumbnail` | Upload a thumbnail\n[**DeleteThumbnail**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#DeleteThumbnail) | **Delete** `/live-streams/{liveStreamId}/thumbnail` | Delete a thumbnail\n[**Complete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreams.md#Complete) | **Put** `/live-streams/{liveStreamId}/complete` | Complete a live stream\n\n\n#### PlayerThemes\n\n\n##### Retrieve an instance of the PlayerThemes API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nplayerThemesApi := client.PlayerThemes\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Create**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#Create) | **Post** `/players` | Create a player\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#Get) | **Get** `/players/{playerId}` | Retrieve a player\n[**Update**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#Update) | **Patch** `/players/{playerId}` | Update a player\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#Delete) | **Delete** `/players/{playerId}` | Delete a player\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#List) | **Get** `/players` | List all player themes\n[**UploadLogo**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#UploadLogo) | **Post** `/players/{playerId}/logo` | Upload a logo\n[**DeleteLogo**](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemes.md#DeleteLogo) | **Delete** `/players/{playerId}/logo` | Delete logo\n\n\n#### Summaries\n\n\n##### Retrieve an instance of the Summaries API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nsummariesApi := client.Summaries\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Create**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summaries.md#Create) | **Post** `/summaries` | Generate video summary\n[**Update**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summaries.md#Update) | **Patch** `/summaries/{summaryId}/source` | Update summary details\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summaries.md#Delete) | **Delete** `/summaries/{summaryId}` | Delete video summary\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summaries.md#List) | **Get** `/summaries` | List summaries\n[**GetSummarySource**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summaries.md#GetSummarySource) | **Get** `/summaries/{summaryId}/source` | Get summary details\n\n\n#### Tags\n\n\n##### Retrieve an instance of the Tags API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\ntagsApi := client.Tags\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Tags.md#List) | **Get** `/tags` | List all video tags\n\n\n#### UploadTokens\n\n\n##### Retrieve an instance of the UploadTokens API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nuploadTokensApi := client.UploadTokens\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**CreateToken**](https://github.com/apivideo/api.video-go-client/blob/main/docs/UploadTokens.md#CreateToken) | **Post** `/upload-tokens` | Generate an upload token\n[**GetToken**](https://github.com/apivideo/api.video-go-client/blob/main/docs/UploadTokens.md#GetToken) | **Get** `/upload-tokens/{uploadToken}` | Retrieve upload token\n[**DeleteToken**](https://github.com/apivideo/api.video-go-client/blob/main/docs/UploadTokens.md#DeleteToken) | **Delete** `/upload-tokens/{uploadToken}` | Delete an upload token\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/UploadTokens.md#List) | **Get** `/upload-tokens` | List all active upload tokens\n\n\n#### Videos\n\n\n##### Retrieve an instance of the Videos API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nvideosApi := client.Videos\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Create**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#Create) | **Post** `/videos` | Create a video object\n[**Upload**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#Upload) | **Post** `/videos/{videoId}/source` | Upload a video\n[**UploadWithUploadToken**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#UploadWithUploadToken) | **Post** `/upload` | Upload with an delegated upload token\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#Get) | **Get** `/videos/{videoId}` | Retrieve a video object\n[**Update**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#Update) | **Patch** `/videos/{videoId}` | Update a video object\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#Delete) | **Delete** `/videos/{videoId}` | Delete a video object\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#List) | **Get** `/videos` | List all video objects\n[**UploadThumbnail**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#UploadThumbnail) | **Post** `/videos/{videoId}/thumbnail` | Upload a thumbnail\n[**PickThumbnail**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#PickThumbnail) | **Patch** `/videos/{videoId}/thumbnail` | Set a thumbnail\n[**GetDiscarded**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#GetDiscarded) | **Get** `/discarded/videos/{videoId}` | Retrieve a discarded video object\n[**GetStatus**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#GetStatus) | **Get** `/videos/{videoId}/status` | Retrieve video status and details\n[**ListDiscarded**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#ListDiscarded) | **Get** `/discarded/videos` | List all discarded video objects\n[**UpdateDiscarded**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Videos.md#UpdateDiscarded) | **Patch** `/discarded/videos/{videoId}` | Update a discarded video object\n\n\n#### Watermarks\n\n\n##### Retrieve an instance of the Watermarks API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nwatermarksApi := client.Watermarks\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Upload**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Watermarks.md#Upload) | **Post** `/watermarks` | Upload a watermark\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Watermarks.md#Delete) | **Delete** `/watermarks/{watermarkId}` | Delete a watermark\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Watermarks.md#List) | **Get** `/watermarks` | List all watermarks\n\n\n#### Webhooks\n\n\n##### Retrieve an instance of the Webhooks API:\n```golang\nclient := apivideosdk.ClientBuilder(\"API_VIDEO_KEY\").Build()\nwebhooksApi := client.Webhooks\n```\n\n##### Endpoints\n\nMethod | HTTP request | Description\n------------- | ------------- | -------------\n[**Create**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Webhooks.md#Create) | **Post** `/webhooks` | Create Webhook\n[**Get**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Webhooks.md#Get) | **Get** `/webhooks/{webhookId}` | Retrieve Webhook details\n[**Delete**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Webhooks.md#Delete) | **Delete** `/webhooks/{webhookId}` | Delete a Webhook\n[**List**](https://github.com/apivideo/api.video-go-client/blob/main/docs/Webhooks.md#List) | **Get** `/webhooks` | List all webhooks\n\n\n\n\n### Models\n\n - [AccessToken](https://github.com/apivideo/api.video-go-client/blob/main/docs/AccessToken.md)\n - [AdditionalBadRequestErrors](https://github.com/apivideo/api.video-go-client/blob/main/docs/AdditionalBadRequestErrors.md)\n - [AnalyticsAggregatedMetricsResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsAggregatedMetricsResponse.md)\n - [AnalyticsAggregatedMetricsResponseContext](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsAggregatedMetricsResponseContext.md)\n - [AnalyticsAggregatedMetricsResponseContextTimeframe](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsAggregatedMetricsResponseContextTimeframe.md)\n - [AnalyticsData](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsData.md)\n - [AnalyticsMetricsBreakdownResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsBreakdownResponse.md)\n - [AnalyticsMetricsBreakdownResponseContext](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsBreakdownResponseContext.md)\n - [AnalyticsMetricsBreakdownResponseData](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsBreakdownResponseData.md)\n - [AnalyticsMetricsOverTimeResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsOverTimeResponse.md)\n - [AnalyticsMetricsOverTimeResponseContext](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsOverTimeResponseContext.md)\n - [AnalyticsMetricsOverTimeResponseData](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsMetricsOverTimeResponseData.md)\n - [AnalyticsPlays400Error](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsPlays400Error.md)\n - [AnalyticsPlaysResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/AnalyticsPlaysResponse.md)\n - [AuthenticatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/AuthenticatePayload.md)\n - [BadRequest](https://github.com/apivideo/api.video-go-client/blob/main/docs/BadRequest.md)\n - [BytesRange](https://github.com/apivideo/api.video-go-client/blob/main/docs/BytesRange.md)\n - [Caption](https://github.com/apivideo/api.video-go-client/blob/main/docs/Caption.md)\n - [CaptionsListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/CaptionsListResponse.md)\n - [CaptionsUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/CaptionsUpdatePayload.md)\n - [Chapter](https://github.com/apivideo/api.video-go-client/blob/main/docs/Chapter.md)\n - [ChaptersListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/ChaptersListResponse.md)\n - [ConflictError](https://github.com/apivideo/api.video-go-client/blob/main/docs/ConflictError.md)\n - [DiscardedVideoUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/DiscardedVideoUpdatePayload.md)\n - [FilterBy](https://github.com/apivideo/api.video-go-client/blob/main/docs/FilterBy.md)\n - [FilterBy1](https://github.com/apivideo/api.video-go-client/blob/main/docs/FilterBy1.md)\n - [FilterBy2](https://github.com/apivideo/api.video-go-client/blob/main/docs/FilterBy2.md)\n - [Link](https://github.com/apivideo/api.video-go-client/blob/main/docs/Link.md)\n - [ListTagsResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/ListTagsResponse.md)\n - [ListTagsResponseData](https://github.com/apivideo/api.video-go-client/blob/main/docs/ListTagsResponseData.md)\n - [LiveStream](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStream.md)\n - [LiveStreamAssets](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreamAssets.md)\n - [LiveStreamCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreamCreationPayload.md)\n - [LiveStreamListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreamListResponse.md)\n - [LiveStreamUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/LiveStreamUpdatePayload.md)\n - [Metadata](https://github.com/apivideo/api.video-go-client/blob/main/docs/Metadata.md)\n - [Model403ErrorSchema](https://github.com/apivideo/api.video-go-client/blob/main/docs/Model403ErrorSchema.md)\n - [NotFound](https://github.com/apivideo/api.video-go-client/blob/main/docs/NotFound.md)\n - [Pagination](https://github.com/apivideo/api.video-go-client/blob/main/docs/Pagination.md)\n - [PaginationLink](https://github.com/apivideo/api.video-go-client/blob/main/docs/PaginationLink.md)\n - [PlayerSessionEvent](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerSessionEvent.md)\n - [PlayerTheme](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerTheme.md)\n - [PlayerThemeAssets](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemeAssets.md)\n - [PlayerThemeCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemeCreationPayload.md)\n - [PlayerThemeUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemeUpdatePayload.md)\n - [PlayerThemesListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/PlayerThemesListResponse.md)\n - [Quality](https://github.com/apivideo/api.video-go-client/blob/main/docs/Quality.md)\n - [RefreshTokenPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/RefreshTokenPayload.md)\n - [RestreamsRequestObject](https://github.com/apivideo/api.video-go-client/blob/main/docs/RestreamsRequestObject.md)\n - [RestreamsResponseObject](https://github.com/apivideo/api.video-go-client/blob/main/docs/RestreamsResponseObject.md)\n - [SummariesListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/SummariesListResponse.md)\n - [Summary](https://github.com/apivideo/api.video-go-client/blob/main/docs/Summary.md)\n - [SummaryCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/SummaryCreationPayload.md)\n - [SummarySource](https://github.com/apivideo/api.video-go-client/blob/main/docs/SummarySource.md)\n - [SummaryUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/SummaryUpdatePayload.md)\n - [TokenCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/TokenCreationPayload.md)\n - [TokenListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/TokenListResponse.md)\n - [TooManyRequests](https://github.com/apivideo/api.video-go-client/blob/main/docs/TooManyRequests.md)\n - [UnrecognizedRequestUrl](https://github.com/apivideo/api.video-go-client/blob/main/docs/UnrecognizedRequestUrl.md)\n - [UploadToken](https://github.com/apivideo/api.video-go-client/blob/main/docs/UploadToken.md)\n - [Video](https://github.com/apivideo/api.video-go-client/blob/main/docs/Video.md)\n - [VideoAssets](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoAssets.md)\n - [VideoClip](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoClip.md)\n - [VideoCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoCreationPayload.md)\n - [VideoSource](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoSource.md)\n - [VideoSourceLiveStream](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoSourceLiveStream.md)\n - [VideoSourceLiveStreamLink](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoSourceLiveStreamLink.md)\n - [VideoStatus](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoStatus.md)\n - [VideoStatusEncoding](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoStatusEncoding.md)\n - [VideoStatusEncodingMetadata](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoStatusEncodingMetadata.md)\n - [VideoStatusIngest](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoStatusIngest.md)\n - [VideoStatusIngestReceivedParts](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoStatusIngestReceivedParts.md)\n - [VideoThumbnailPickPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoThumbnailPickPayload.md)\n - [VideoUpdatePayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoUpdatePayload.md)\n - [VideoWatermark](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideoWatermark.md)\n - [VideosListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/VideosListResponse.md)\n - [Watermark](https://github.com/apivideo/api.video-go-client/blob/main/docs/Watermark.md)\n - [WatermarksListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/WatermarksListResponse.md)\n - [Webhook](https://github.com/apivideo/api.video-go-client/blob/main/docs/Webhook.md)\n - [WebhooksCreationPayload](https://github.com/apivideo/api.video-go-client/blob/main/docs/WebhooksCreationPayload.md)\n - [WebhooksListResponse](https://github.com/apivideo/api.video-go-client/blob/main/docs/WebhooksListResponse.md)\n\n\n\n## Have you gotten use from this API client?\n\nPlease take a moment to leave a star on the client ⭐\n\nThis helps other users to find the clients and also helps us understand which clients are most popular. Thank you!\n\n## Contribution\n\nSince 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.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapivideo%2Fapi.video-go-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapivideo%2Fapi.video-go-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapivideo%2Fapi.video-go-client/lists"}