api
Docker image
Online
Simplifyd Cloud
You pay your cloud provider’s egress fees. Your users pay their telco for data. With Simplifyd Zerodata, one developer data fee covers both—so your users can access your app without spending their data on supported networks.
Run containers, databases, queues and storage in ng-west-1, Nigeria. Use the console, CLI or API, or connect your coding agent through MCP. Compute is billed by the second.
MTN, Airtel, Glo and T2 in Nigeria; Safaricom in Kenya. Your users’ access is covered by your developer data fee.
How Zerodata works → 02 — YouContainers, databases, queues and storage in ng-west-1, Nigeria. Hosting and compute are billed separately from Zerodata usage.
Explore hosting →Deploy containers and add managed databases, queues or storage. The examples below show the same project in the CLI, MCP, dashboard and Terraform.
Your services run in our Nigerian region, with a private network connecting the services in each project.
Use the console or CLI, call the API with the Go or TypeScript SDK, or connect a coding agent through MCP. Project tokens are available for CI.
Compute is billed by the second while a service runs. Disk storage is billed until you delete it. Zerodata traffic has its own data fee.
Review and approve changes before they are applied. Give team
members owner, developer or billing roles, and store images in
your private registry at sdcr.io.
$ edge service create --name web --type docker --image sdcr.io/acme/web --tag 1.4.0
✓ Created service web (01a0cd47-5800-7218-b588-77bab11e3ecb)
$ edge service create --name api --type docker --image sdcr.io/acme/api --tag 2.1.0
✓ Created service api (01a0cd47-5e01-7a1f-87a3-12a0706f0ef1)
$ edge service create --name website --type static_site
✓ Created service website (01a0cd47-6402-76eb-8f65-52fac8433065)
$ edge service create --name db --type postgres --storage 20 --mode standalone
✓ Created service db (01a0cd47-6a03-75f2-b256-501cf747a7c0)
$ edge service create --name events --type kafka --storage 10 --mode standalone
✓ Created service events (01a0cd47-7004-7efb-889c-6a1115d57277)
$ edge service create --name assets --type s3_bucket
✓ Created service assets (01a0cd47-7605-72cc-aee5-a94293eb91b9)
$ edge service create --name videos --type video
✓ Created service videos (01a0cd47-7c06-7fd9-94dc-945f88ac95fc)
$ for s in web api db events; do edge deploy up $s; done
✓ Deployment started: 01a0cd47-8207-79a2-a9c9-62e62edbf235 (status: pending)
✓ Deployment started: 01a0cd47-8808-7e1b-8cca-4f4dab7d846b (status: pending)
✓ Deployment started: 01a0cd47-8e09-762d-8050-160461347272 (status: pending)
✓ Deployment started: 01a0cd47-940a-70e7-868b-bec18ff2652d (status: pending)
$ edge video upload launch.mp4 --library videos --title Launch --wait
[============================] 100.0% 212.4 MiB / 212.4 MiB
→ Encoding Launch…
✓ Uploaded Launch
FIELD VALUE
ID 01a0cd47-9a0b-73e0-af82-6bfb73633f4e
Status ready
Source 212.4 MiB
Embed https://videos-k7m2qx9-p4t8z-hls.video.simplifyd.app/e/01a0cd47-9a0b-73e0-af82-6bfb73633f4e
$ ▌
› Put the acme stack on production: web and api from sdcr.io/acme,
the site in ./site, Postgres, Kafka for events, an assets bucket,
and upload media/launch.mp4 to a video library.
● create-service {name: "web", type: "docker", image: "sdcr.io/acme/web", tag: "1.4.0"}
↳ {"slug": "01a0cd50-7fc0-7909-a756-9b9bd4d31177", "name": "web", "status": "pending", …}
● create-service {name: "api", type: "docker", image: "sdcr.io/acme/api", tag: "2.1.0"}
↳ {"slug": "01a0cd50-8699-7388-a4a2-3ba9cd9547b5", "name": "api", "status": "pending", …}
● deploy-static-site {name: "website", files: [index.html, styles.css, app.js]}
↳ {"display_name": "website", "file_count": 3, "bytes_used": 48213, …}
● create-service {name: "db", type: "postgres", storage_gb: 20, mode: "standalone"}
↳ {"slug": "01a0cd50-944b-714d-989a-c3dac8bc794b", "name": "db", "status": "pending", …}
● create-service {name: "events", type: "kafka", storage_gb: 10, mode: "standalone"}
↳ {"slug": "01a0cd50-9b24-7a01-bc0b-cbb2e0c8fb91", "name": "events", "status": "pending", …}
● create-service {name: "assets", type: "s3_bucket"}
↳ {"slug": "01a0cd50-a1fd-7090-b484-7298ef77ee91", "name": "assets", …}
● deploy-service {service: "web"}
↳ {"slug": "01a0cd50-a8d6-78d7-9675-f6f9eb7ab879", "status": "pending", …}
● deploy-service {service: "api"}
↳ {"slug": "01a0cd50-afaf-7e1a-a870-d10bc4d5b05e", "status": "pending", …}
● deploy-service {service: "db"}
↳ {"slug": "01a0cd50-b688-7e20-ac58-1864ede064f5", "status": "pending", …}
● deploy-service {service: "events"}
↳ {"slug": "01a0cd50-bd61-7636-9c4a-6ef19a48b58b", "status": "pending", …}
● upload-video {library: "videos", path: "/srv/acme/media/launch.mp4", title: "Launch"}
↳ {"slug": "01a0cd50-c43a-74a0-82cf-cb405c06d861", "status": "ready",
"embed_url": "https://videos-k7m2qx9-p4t8z-hls.video.simplifyd.app/e/01a0cd50-c43a-…", …}
All seven are in production. web, api, db and events are deploying,
website is published with its 3 files, assets is ready for uploads,
and Launch is encoded — the embed_url above plays it.
› ▌
acme / production
web
Docker image
Online
api
Docker image
Online
website
Static site
Online
db
Postgres
Online
events
Kafka
Online
assets
Bucket
Online
videos
Video library
Online
Create a new Docker image service.
Host an HTML, CSS and JavaScript site. No container, no build step — upload your files and the site is live.
Site nameConfigure storage and deployment type for your new Postgres database.
Configure the topology and storage for your new Kafka cluster.
ModeStandaloneCreate an S3-compatible bucket with managed credentials.
Bucket nameUpload video and get a player you can embed anywhere. Playback is datafree, so people on supported networks can watch without spending their data.
Library name Highest quality720p — recommended$ cat main.tf
provider "simplifyd" {
env = "production"
}
resource "simplifyd_service" "web" {
name = "web"
type = "docker"
docker = { image = "sdcr.io/acme/web", tag = "1.4.0" }
}
resource "simplifyd_service" "api" {
name = "api"
type = "docker"
docker = { image = "sdcr.io/acme/api", tag = "2.1.0" }
}
resource "simplifyd_service" "website" {
name = "website"
type = "static_site"
}
resource "simplifyd_service" "db" {
name = "db"
type = "postgres"
postgres = { storage_gb = 20, mode = "standalone" }
}
resource "simplifyd_service" "events" {
name = "events"
type = "kafka"
kafka = { storage_gb = 10, mode = "standalone" }
}
resource "simplifyd_service" "assets" {
name = "assets"
type = "s3_bucket"
}
resource "simplifyd_service" "videos" {
name = "videos"
type = "video"
}
$ terraform apply -auto-approve
Terraform will perform the following actions:
# simplifyd_service.api will be created
# simplifyd_service.assets will be created
# simplifyd_service.db will be created
# simplifyd_service.events will be created
# simplifyd_service.videos will be created
# simplifyd_service.web will be created
# simplifyd_service.website will be created
Plan: 7 to add, 0 to change, 0 to destroy.
simplifyd_service.web: Creating...
simplifyd_service.api: Creating...
simplifyd_service.website: Creating...
simplifyd_service.db: Creating...
simplifyd_service.events: Creating...
simplifyd_service.assets: Creating...
simplifyd_service.videos: Creating...
simplifyd_service.assets: Creation complete after 2s [id=01a0cd50-cb13-7593-9c97-3b10b4ed0f03]
simplifyd_service.website: Creation complete after 2s [id=01a0cd50-d1ec-7044-870b-11429ed1d2c0]
simplifyd_service.videos: Creation complete after 3s [id=01a0cd50-d8c5-7033-9dda-231e4b0ab2f5]
simplifyd_service.web: Still creating... [10s elapsed]
simplifyd_service.api: Still creating... [10s elapsed]
simplifyd_service.db: Still creating... [10s elapsed]
simplifyd_service.events: Still creating... [10s elapsed]
simplifyd_service.api: Creation complete after 14s [id=01a0cd50-df9e-70c3-9f3d-02eace482afb]
simplifyd_service.web: Creation complete after 15s [id=01a0cd50-e677-75f0-a307-0789a9000c5d]
simplifyd_service.db: Still creating... [20s elapsed]
simplifyd_service.events: Still creating... [20s elapsed]
simplifyd_service.db: Creation complete after 26s [id=01a0cd50-7fc0-7909-a756-9b9bd4d31178]
simplifyd_service.events: Creation complete after 31s [id=01a0cd50-8699-7388-a4a2-3ba9cd9547b6]
Apply complete! Resources: 7 added, 0 changed, 0 destroyed.
$ ▌
Services
Push a Docker image and deploy it. Any language or framework.
Managed clusters with a free control plane. Use kubectl as usual.
A Linux server on your project's private network, with SSH.
Upload your HTML, CSS and JavaScript files. No container or Dockerfile needed.
Managed PostgreSQL with backups and configurable settings.
A single server or a replicated setup. Each server keeps a full copy of your data.
Standalone, replicated or clustered Redis.
Event streams with a single broker or a production cluster.
S3-compatible file storage at buckets.simplifyd.com.
Upload, encode and embed video. Zerodata covers viewers’ data access on supported networks.
Put several services behind one domain, routed by path.
Site-to-site tunnels to a bank, partner or office, from one fixed address.
Start with a container, database or static site. Add the services you need as you build.