Developer Ecosystem • REST API v1

Programmatic Control Over Hosting & Conversions

Automate edge website deployments, stream inbound leads into your multi-tenant CRM, and trigger official WhatsApp Cloud API broadcasts with standard REST calls.

Base URL: https://app.manza.in/apiFormat: application/json & multipart/form-data

Authentication & API Keys

Authenticate requests using your workspace API Bearer token.

All requests to protected MANZA API endpoints require an API Key passed in the Authorization header as a Bearer token. API keys can be provisioned in your Workspace Settings under the Developer tab.

Authorization: Bearer mnz_live_9f8c2e7a1b4d0e3f5a6b8c
POST

/api/websites

Deploy an AI-generated website ZIP package directly to our dedicated edge network.

Request Parameters

  • filerequired • binary

    ZIP archive containing HTML, CSS, JS, and media assets.

  • nameoptional • string

    Display title for the website project in your dashboard.

  • slugoptional • string

    Unique subpath URL under your workspace subdomain.

  • isPrimaryoptional • boolean

    When true, serves this site at the apex of your subdomain.

// cURL Deployment Example
curl -X POST "https://app.manza.in/api/websites" \
  -H "Authorization: Bearer mnz_live_YOUR_KEY" \
  -F "file=@/path/to/website-bundle.zip" \
  -F "name=Landing Page" \
  -F "slug=landing" \
  -F "isPrimary=false"
// Response (200 OK)
{
  "success": true,
  "projectId": "cm_8a7d2e1b4c",
  "name": "Landing Page",
  "slug": "landing",
  "url": "https://agency.gomanza.in/landing",
  "pagesPublished": ["index.html", "pricing.html", "contact.html"],
  "edgeStatus": "LIVE_ON_EDGE"
}
POST

/api/leads

Ingest leads from custom forms, external webhooks, or third-party checkouts.

Payload Attributes

  • email / phoneat least one required

    Customer contact address or E.164 formatted phone number.

  • nameoptional • string

    Full name (auto-split into first and last name).

  • utm_source / utm_campaignoptional • string

    Attribution parameters attached to the contact journey.

// JavaScript Fetch Example
await fetch("https://app.manza.in/api/leads", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer mnz_live_YOUR_KEY"
  },
  body: JSON.stringify({
    email: "lead@example.com",
    name: "Aarav Sharma",
    phone: "+919876543210",
    utm_source: "google_ads",
    utm_campaign: "ai_hosting_q3"
  })
});
// Response (200 OK)
{
  "success": true,
  "message": "Lead captured successfully",
  "contactId": "cnt_9a2b8c4d",
  "isNewContact": true
}
POST

/api/whatsapp/messages

Dispatch official Meta Cloud API template messages with zero middleman markups.

Payload Attributes

  • recipientPhonerequired • string

    International E.164 phone number (e.g. +919876543210).

  • templateNamerequired • string

    Pre-approved Meta template identifier.

  • componentsoptional • array

    Dynamic header/body variables and button CTA URLs.

// Dispatch cURL Call
curl -X POST "https://app.manza.in/api/whatsapp/messages" \
  -H "Authorization: Bearer mnz_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "recipientPhone": "+919876543210",
    "templateName": "order_confirmation_v2",
    "parameters": ["Aarav", "#MNZ-4891"]
  }'
// Response (200 OK)
{
  "success": true,
  "messageId": "wamid.HBgLOTE5ODc2NTQzMjEwFQIAERgSMzNCOEY4Qzc3RDFFODRFREYA",
  "status": "QUEUED_FOR_DELIVERY"
}

HTTP Response & Error Standards

Status CodeDescriptionRemediation Action
200 OKRequest succeededNo action required.
400 Bad RequestValidation or schema errorCheck required fields and slug regex formatting.
401 UnauthorizedMissing or invalid Bearer tokenVerify your API key in workspace settings.
413 Payload Too LargeZIP exceeds tier limit (10MB Free / 50MB Pro)Compress media assets or upgrade to Pro tier.
429 Too Many RequestsSliding window rate limit reachedInspect Retry-After header and back off requests.
500 Server ErrorInternal operational exceptionContact support@manza.in with request timestamp.