Build with the whole network
One console for projects, apps and keys on every OpenVibe service.
Alpha, open source and free. It never stores a secret.
// openvibe-sdk v0.168.0
const sdk = require('openvibe-sdk');
const ov = sdk.createClient(); // public reads need no key
const search = sdk.search.createSearchClient(ov);
const { results } = await search.query('go live');
const registry = sdk.registry.createRegistryClient(ov);
const services = await registry.services();The building blocks
Every OpenVibe product runs on these, and your app can call the same ones with a project's token.
- AI APIMany models, one API
- AgentsHand a task to an agent
- CodingCoding agents, one router
- ComputeJobs on nodes, per second
- StorageS3-compatible zones
- HostingHost sites and apps
- Media APIVideo, clips and files
- EventsTopics, cursors, webhooks
- SearchThe network in one query
- Sign-inOAuth 2.0 with PKCE
- PaymentsTips and memberships
- ChatSupport chat, one tag
- ToolsHundreds of tools as APIs
- RobotsRobots through one gate
- GamesAchievements and saves
Just here to use OpenVibe? Chat with Vibe or see the network.
Quick start
openvibe-sdk v0.168.0, for Node and the browser. Public reads need no key.
Start from a working example
All examples- Sign people in with OpenVibeoauth-app · PKCE, no secret in a web app
- Store and serve filesmedia-uploader · your project's Media space
- React to what happenswebhook-consumer · topics and signed webhooks
- Run tools as jobstool-job · follow its stream across restarts
- Build a chat botchat-bot · stays in its room, says it is a bot
A new app from a template · npx
npx --package=https://codeload.github.com/OpenVibers/OpenVibe.Examples/tar.gz/refs/tags/v0.3.0 \
create-openvibe-app my-app --template webTemplates: web, server, bot and mod. Every way to mod the network.
Calls with an app's key · Node and curl
A sandbox app in your project has a client id and secret. Upload a file from Node:
// npm i https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.168.0
const sdk = require('openvibe-sdk');
const tokens = sdk.auth.createServiceTokenClient({
clientId: process.env.OV_CLIENT_ID, clientSecret: process.env.OV_CLIENT_SECRET,
});
const ov = sdk.createClient({ tokenProvider: tokens });
const { unverifiedClaims } = await tokens.getTokenInfo({ audience: 'openvibe.media' });
const media = sdk.media.createMediaClient(ov, { app: unverifiedClaims.project_id });
const file = await media.upload(bytes, { filename: 'logo.png', contentType: 'image/png' });Or get its token over HTTP, from any language:
curl -s https://openvibe.network/oauth/token \
-d grant_type=client_credentials \
-d client_id="$OV_CLIENT_ID" -d client_secret="$OV_CLIENT_SECRET" \
-d audience=openvibe.media
# returns {"access_token":"…","token_type":"Bearer","expires_in":300,…}From account to integration
6 items
From account to integration
- Create a projectSandbox-only at first; staff switch on production.
- Add an app and its keyIts secret shows once; a playground has its grants.
- Ask for capabilitiesApproved inside the project's allowance.
- Get a tokenClient credentials, or sign people in with PKCE.
- Receive eventsSubscribe, then verify each delivery's signature.
- Publish a releaseValidated; rotate or revoke keys any time.
What a project gets · free today
No plan to buy and no card to add. What a project gets is its limits, and these are the numbers OpenVibe.Events enforces for every project.
| Limit | Sandbox | Production |
|---|---|---|
| Events published per minute | 30 a minute | 120 a minute |
| Event bytes kept | 5 MB | 50 MB |
| Days an event is kept | 7 days | 30 days |
| Days an event can still be replayed | none | 365 days |
| Webhook subscriptions | 5 | 20 |
| Payload size of one event | 64 KB | 64 KB |
These are the limits the service enforces, read from openvibe.events/limits.json.
Reference
11 links
Reference
Generated from openvibe-contracts v0.419.0 and openvibe-sdk v0.168.0: API explorer · contracts · capabilities · events · services · tools · SDK · all limits.
One API lists every resource of a project across every service; export a project as one archive any time. Alpha: what works and what does not is on the transparency page.
Questions developers ask
6 questions
Questions developers ask
What does it cost?
Nothing today. There is no plan to buy and no card to add; a project gets the limits on this page, which the services themselves enforce.
Do I need permission to start?
No. Sign in, create a project and add a sandbox app; its sandbox capabilities are approved at once. Production is switched on by staff for a project that needs it.
Which languages can I use?
Any that speaks HTTP: every API takes a Bearer token and answers JSON, with RFC 9457 problems for errors. openvibe-sdk adds typed clients for Node and the browser.
Where do my client secrets live?
OpenVibe.Network shows a new secret once and keeps only a hash. This console passes it through in that one response and stores no copy.
Can my users sign in with their OpenVibe account?
Yes. Authorization code with PKCE gives your app a token that acts for the person, carrying only the capabilities your app was granted. A public web app needs no secret.
Is it open source?
Yes. Every OpenVibe service is open source on GitHub under OpenVibers, and the examples are MIT, so you can copy them into your own project.
Part of OpenVibe
4 items
More on OpenVibe
One account across every OpenVibe site.