Platform concepts

This page collects the vocabulary used across the console, the CLI, the API, and the rest of the documentation. Read it before creating your first project: most configuration and billing decisions depend on these concepts.

Account, organization, and permissions

Account

An account identifies a person. It has a verified email, a password, optional two-factor authentication and, if you want to deploy from repositories, a GitHub connection. See Account settings.

Organization

The organization is where projects, billing, credit, members, and API keys live. The same account can belong to several organizations and switch between them in the console. Every project belongs to exactly one organization. See Organizations.

Roles and permissions

Each member gets a role (owner, assistant, or member) and, when needed, granular permissions per resource, such as a specific project, databases, or billing. The same permission model applies to people and API keys. See Granular permissions.

Organization API key

Key used by the API, the CLI, the GitHub Action, and agents through MCP. It belongs to the organization, receives only the scopes you grant, and can be revoked at any time. See API keys.

Projects

Project

A project is the unit you create, configure, monitor, and pay for. Each project has a type, a plan, a payment model, and a unique ID used by the CLI and the API.

Project types

TypeWhat it is forWhere to learn
HTTPWebsites, APIs, workers, and applications in generalDeploy
PostgreSQL / MariaDBManaged relational databaseDatabase
Key-Value, Cache, and QueuesManaged Valkey for state, caching, and messagingManaged services
AnalyticsManaged ClickHouse for analytical queriesAnalytics

HTTP project source

An HTTP project is deployed from one of two sources, chosen at creation:

  • GitHub repository: Zenifra builds your code (Node.js or Python) from a branch. See Deploy via GitHub.
  • OCI image: you provide a ready image from a public or private registry. See Deploy via OCI image.

The source cannot be changed after creation.

Template

A template describes a ready application (image, port, variables, and optionally a database) that can be deployed in a few clicks. See Templates.

Preview environment

A temporary copy of an HTTP project created for a pull request or a preview key. It inherits the main project configuration and expires automatically. See Preview environments.

Capacity and runtime

Plan

The plan defines CPU, memory, included storage, and extra features such as a custom subdomain, advanced metrics, health checks, auto-scaling, and IP access control. The console always shows the plan features before you confirm.

Instance

An instance is a running copy of your application or database. HTTP projects can run 1 to 10 fixed instances, or scale automatically with auto-scaling. More instances increase capacity and availability, and also cost.

Exposure

HTTP projects are either public (they get a *.clients.zenifra.com address and accept custom domains) or private (no public route, ideal for workers and automations). See Network access.

Environment variables and storage

Environment variables keep configuration and secrets out of your code. Persistent storage keeps files across restarts and new versions.

Billing

Payment model

Each project is billed hourly, monthly, or yearly. Hourly billing gives more flexibility to change plan and storage; monthly and yearly billing reserve capacity for the contracted period. See Payment models.

Credit

Credit is the organization's prepaid balance, also used for AI consumption. See Managing payments.

Next steps

On this page