Limits and tiers

OpenVibe runs every project within limits it can keep paying for. Usage is metered per project and per environment, and each limit below is what the service that enforces it reports from its running configuration. Codes reads it every few minutes and never keeps its own copy.

How limits work

OpenVibe Host

From OpenVibe Host's /limits.json: per project and environment; projects per owner.

LimitCapabilitySandboxProductionPast it
Projects one person ownshost.site.manage1010429 quota.projects
Siteshost.site.manage310429 quota.sites
Custom domainshost.site.managenone5429 quota.custom_domains
Deploys in 24 hourshost.site.manage20 in 24 hours50 in 24 hours429 quota.deploys_per_day
Stored bytes (every deploy kept)host.site.manage100 MB1 GB413 quota.storage
Files in one deployhost.site.manage2,00010,000413 quota.max_files
Size of one filehost.site.manage10 MB25 MB413 quota.max_file_bytes

OpenVibe Events

From events.openvibe.network/limits.json: per project and environment (ADR-014).

LimitCapabilitySandboxProductionPast it
Events published per minuteevents.app.publish30 a minute120 a minute429 events.quota_exceeded
Event bytes keptevents.app.publish5 MB50 MB429 events.quota_exceeded
Days an event is keptevents.app.read7 days30 dayspruned
Webhook subscriptionsevents.app.subscribe520429 events.quota_exceeded
Payload size of one eventevents.app.publish64 KB64 KB413 events.payload_too_large
Events in one requestevents.app.publish100100413 events.batch_too_large
Topics on one realtime connection—2020400 realtime.too_many_topics

OpenVibe Media

From openvibe.media/limits.json: per project tenant and environment; namespaces app.<project_id> and app.<project_id>.sandbox (WS-G task 2).

LimitCapabilitySandboxProductionPast it
Stored bytes (every namespace of the tenant)media.object.upload100 MB1 GB413 media.quota.exceeded
Namespaces below the rootmedia.object.upload100100413 media.quota.namespaces_exceeded
Size of a single-part uploadmedia.object.upload256 MB256 MB413 media.object.too_large
Size of a multipart uploadmedia.object.upload20 GB20 GB413 media.object.too_large
Size of one multipart partmedia.object.upload256 MB256 MB413 media.object.too_large
Size of an object played publiclymedia.object.upload500 MB500 MB422 media.invariant.public_object_too_large
Hours an unfinished upload holds its quotamedia.object.upload72 hours72 hoursfailed, bytes freed
Days a deleted object can be restoredmedia.object.delete30 days30 dayspurged

Other capabilities

These can be granted to apps, but their owners do not publish their limits yet. Each shows its quota class from openvibe-contracts v0.53.0.

OwnerCapabilities (quota class)
codescodes.release.manage (codes-release-write), codes.release.read (codes-read)
communitycommunity.paste.create (community-write), community.post.create (community-write), community.pulse.read (community-read), community.space.read (community-read), community.thread.read (community-read)
gamesgames.mod.read (games-read), games.prop.place (games-mod-runtime), games.world.announce (games-mod-runtime)
livelive.channel.read (live-read), live.discovery.read (live-read), live.stream.read (live-read)
searchsearch.query.run (search-query)
toolstools.job.cancel (tools-job), tools.job.create (tools-job), tools.job.read (tools-read), tools.net.probe (tools-probe), tools.tool.read (tools-read), tools.tool.run (tools-run)
vipvip.perk.list (vip-read), vip.plan.list (vip-read)