SDKs overview
Pick the right Videohati client library — Node.js, React, Laravel, or the web player — and understand where each one runs.
An SDK saves you from hand-writing HTTP calls. It gives you typed methods,
retries, the multipart upload flow, and webhook verification in one package —
so you write videohati.videos.upload(file) instead of stitching requests
together yourself.
Videohati publishes four official libraries. Three run on the server or in the browser; one is the player that renders the video itself.
Which one do I need?
| Package | Install | Use it for | Runs where |
|---|---|---|---|
@videohati/node | npm install @videohati/node | Uploading video, creating playback sessions, managing webhooks | Node.js server |
@videohati/react | npm install @videohati/react @videohati/player | The player component plus upload and metadata hooks | Browser + React |
videohati/laravel | composer require videohati/laravel | The same server work from PHP, with a Blade embed directive | PHP server |
@videohati/player | npm install @videohati/player or the script tag | Rendering a protected video on any page | Any website |
| REST API directly | — | Any language we don't ship an SDK for | Your server — see /docs/api |
@videohati/node, @videohati/react, and videohati/laravel are at
1.0.0-rc.0. @videohati/player is at 1.0.0.
The golden path
Every integration follows the same rule: your server holds the API key; the browser only ever sees a short-lived session token.
- On your server, use
@videohati/nodeorvideohati/laravelto upload a video and create a playback session. - Hand the session token — not the API key — to the page.
- In the browser,
@videohati/player(or@videohati/react) renders the video from that token.
The API key never leaves the server, so no one can read it from page source and use your account.
Next steps
- Server work in Node.js: Node.js SDK.
- The player component and hooks in React: React SDK.
- Server work in PHP: Laravel SDK.
- The framework-free player: Player.