Developers

API Reference

A programmatic interface to manage deployments, domains, DNS, projects, and support tickets on Mahsumah Cloud.

Design draft — last updated 2026

Overview

This page documents the planned surface of the Mahsumah Cloud public API. It lets you manage your hosting infrastructure programmatically: create deployments, connect domains, manage DNS records, track projects, and open support tickets.

Status: the public API is under active development — available on request. The examples below describe the planned design and are not live endpoints yet. Today, deployments and hosting are managed through the dashboard and our GitHub integration.

Base URL

All requests will be served from the following base URL (planned):

https://cloud.mahsumaah.sa/api

All requests and responses use JSON and are served over HTTPS only.

Authentication

Coming soon

We do not issue public API keys yet. The planned design authenticates requests with a Bearer token generated from your dashboard. The example below illustrates the planned design only:

Planned example — auth header
curl https://cloud.mahsumaah.sa/api/projects \
  -H "Authorization: Bearer mc_live_xxxxxxxxxxxxxxxxxxxx"

Keep the token secret; it grants full access to your account. The final design will support revoking tokens and scoping their permissions.

Deployments

Planned

Create a new deployment for a project, or query the status of an existing one. Projects are built and deployed on our Riyadh infrastructure.

Request — create deployment
curl -X POST https://cloud.mahsumaah.sa/api/deployments \
  -H "Authorization: Bearer mc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "project": "mena-studio",
    "ref": "main",
    "production": true
  }'
Response
{
  "id": "dpl_8Kd2mQ",
  "project": "mena-studio",
  "state": "BUILDING",
  "ref": "main",
  "commit": "a1b2c3d",
  "production": true,
  "url": "https://mena-studio.mahsumaah.sa",
  "region": "riyadh",
  "createdAt": "2026-08-11T09:20:00Z"
}

Domains

Planned

Attach a custom domain to a project and check its verification and SSL status. SSL certificates are issued and renewed automatically.

Request — add domain
curl -X POST https://cloud.mahsumaah.sa/api/domains \
  -H "Authorization: Bearer mc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "project": "mena-studio",
    "name": "menastudio.sa"
  }'
Response
{
  "name": "menastudio.sa",
  "project": "mena-studio",
  "verified": false,
  "ssl": "PENDING",
  "nameservers": ["ns1.mahsumaah.sa", "ns2.mahsumaah.sa"],
  "createdAt": "2026-08-11T09:22:00Z"
}

DNS

Planned

Manage DNS records for domains hosted on our own nameservers (ns1/ns2.mahsumaah.sa).

Request — create DNS record
curl -X POST https://cloud.mahsumaah.sa/api/dns/menastudio.sa/records \
  -H "Authorization: Bearer mc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "A",
    "name": "@",
    "value": "212.0.0.10",
    "ttl": 3600
  }'
Response
{
  "id": "rec_Lp9tZ",
  "domain": "menastudio.sa",
  "type": "A",
  "name": "@",
  "value": "212.0.0.10",
  "ttl": 3600,
  "createdAt": "2026-08-11T09:25:00Z"
}

Projects

Planned

List the projects in your account and inspect their settings and linked GitHub repository.

Request — list projects
curl https://cloud.mahsumaah.sa/api/projects \
  -H "Authorization: Bearer mc_live_xxx"
Response
{
  "projects": [
    {
      "id": "prj_3Vn7a",
      "name": "mena-studio",
      "framework": "nextjs",
      "repo": "menastudio/website",
      "region": "riyadh",
      "productionUrl": "https://mena-studio.mahsumaah.sa"
    }
  ]
}

Support tickets

Planned

Open a support ticket or track its status programmatically. Ticket-based support is available today from within the dashboard.

Request — open ticket
curl -X POST https://cloud.mahsumaah.sa/api/tickets \
  -H "Authorization: Bearer mc_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Custom domain not verifying",
    "priority": "normal",
    "message": "menastudio.sa still shows PENDING after 24h."
  }'
Response
{
  "id": "tkt_5Wq1x",
  "subject": "Custom domain not verifying",
  "status": "OPEN",
  "priority": "normal",
  "createdAt": "2026-08-11T09:30:00Z"
}

Request early access

The API is in early access. Request access and we'll share a test key as soon as it's ready, or talk to our team to discuss integrating it with your systems.

Related: GitHub integration · Developer tools · Products · Domains & DNS