Avis de maintenance
Mise à niveau du stockage NVMe dans 02:15:43. Aucune interruption prévue.
Fenêtre : 03:00 UTC Voir le statut
USD United States Dollar
$
EUR Euro
GBP British Pound
£
ILS Israeli New Shekel
0

Changer de langue

Tapez pour filtrer ou appuyez sur Entrée pour sélectionner
Commencer
API Surface

Automate domains, VPS, and hosting from your stack.

Use signed REST calls to search, register, and manage every service VASTROX provisions.

50+ Provisioning endpoints
3 POPs Regions covered
HMAC + TLS Auth standard
Authentication model

Every call is signed with your API key and secret. Tokens are scoped per workspace.

  • Generate an API key pair inside Admin → API Access. Keys can be rotated without downtime.
  • Send `X-API-Key`, `X-API-Timestamp`, and `Content-SHA256` headers. Sign the body + timestamp using HMAC-SHA256 with your secret.
  • Requests older than 30 seconds or with mismatched digests are rejected to block replay attacks. Make sure your servers track UTC.
https://api.vastrox.cloud Base URL
X-API-Key header X-API-Signature header
curl -X POST https://api.vastrox.cloud/v1/domains/search \ -H "X-API-Key: sk_live_123" \ -H "X-API-Timestamp: 1715011200" \ -H "X-API-Signature: d7b8f3..." \ -H "Content-Type: application/json" \ -d '{"domain":"example.com","currency":"EUR"}'
Console interactive

Prévisualisez vos requêtes avant d’automatiser.

Indiquez votre clé/secret (ou gardez l’exemple) puis choisissez un endpoint pour voir les en-têtes, le corps et une réponse simulée.

La console renvoie des réponses fictives pour visualiser les structures sans toucher la production.

Prévisualisation de la requête

Sélectionnez un endpoint pour construire la requête.

Réponse simulée

Lancez la console pour afficher une réponse simulée.
Domains

Domain registrar API

Availability checks, registrations, transfers, WHOIS privacy, and nameserver management in one surface.

  • POST /v1/domains/search

    Return availability, pricing, and promo metadata for a single domain or batch.

  • POST /v1/domains/register

    Register or transfer a domain using contact + nameserver payloads. Returns domainId and order status.

  • PATCH /v1/domains/{id}/nameservers

    Update nameservers, DS records, WHOIS privacy, or request EPP codes with audit tracking.

  • POST /v1/domains/{id}/privacy

    Enable or disable WHOIS privacy for a domain. Response includes registry confirmation metadata.

  • GET /v1/domains/{id}/epp

    Retrieve the EPP/auth code for transfers. Codes expire automatically after delivery.

Sample payload
{
  "domain": "example.com",
  "period": 1,
  "privacy": true,
  "contacts": {
    "registrant": {"name": "Alex Example","email": "alex@example.com"}
  },
  "nameservers": ["ns1.vastrox.net","ns2.vastrox.net"]
}
  • Nameserver updates propagate via streaming tasks with status webhooks.
  • Privacy toggles return the final registry disposition and reference IDs.
  • Transfer events map to `domains.transfer.*` notifications for your billing stack.
Sample request
{
    "method": "POST",
    "url": "https://api.vastrox.cloud/v1/domains/register",
    "headers": {
        "X-API-Key": "sk_docs_public",
        "X-API-Timestamp": "1768611128",
        "X-API-Signature": "5cef3a65f2d0052a2a9e94ca4deebee70b6ce2be8f764f6c2cc1dd4dd599d75e"
    },
    "body": {
        "domain": "api-docs-example.com",
        "period": 1,
        "privacy": true,
        "currency": "EUR",
        "nameservers": [
            "ns1.vastrox.net",
            "ns2.vastrox.net"
        ]
    }
}
Sample response
{
    "echo": {
        "domain": "api-docs-example.com",
        "period": 1,
        "privacy": true,
        "currency": "EUR",
        "nameservers": [
            "ns1.vastrox.net",
            "ns2.vastrox.net"
        ]
    },
    "request_id": "sim_696add38ef8ad5.26429562",
    "domainId": "dom_696add38ef8a7",
    "status": "pending",
    "privacy": true
}

Webhook event: Emits `domains.registered` once the registry confirms activation.

Compute

SolusVM2 orchestration

Provision, reboot, rescue, and inspect usage for every VPS that runs on SolusVM2.

  • POST /v1/solus/servers

    Create a server from a plan + region mapping. Supports cloud-init and SSH key injection.

  • POST /v1/solus/servers/{id}/power

    Send `reboot`, `shutdown`, `boot`, or `rescue` actions. Responses include asynchronous task IDs.

  • GET /v1/solus/servers/{id}/metrics

    Retrieve realtime CPU, RAM, disk, and bandwidth metrics pulled from SolusVM2 telemetry.

Lifecycle example
curl -X POST https://api.vastrox.cloud/v1/solus/servers/123/power                  -H "X-API-Key: sk_live_123"                  -H "X-API-Timestamp: 1715011200"                  -H "X-API-Signature: ff83ab..."                  -d '{"action":"reboot","reason":"customer_request"}'
  • Every action writes to the automation timeline visible in the client + admin portals.
  • Task IDs can be polled or you can subscribe to `solus.tasks.*` webhooks.
  • Per-server rate limits default to 30 actions/minute to protect nodes.
Sample request
{
    "method": "POST",
    "url": "https://api.vastrox.cloud/v1/solus/servers/svm-docs-123/power",
    "headers": {
        "X-API-Key": "sk_docs_public",
        "X-API-Timestamp": "1768611128",
        "X-API-Signature": "fe0090e733471521b4cd59d0851937f0871b8b0641a1047d9b57dfa4b0c91d67"
    },
    "body": {
        "action": "reboot",
        "reason": "docs-preview"
    }
}
Sample response
{
    "echo": {
        "action": "reboot",
        "reason": "docs-preview"
    },
    "request_id": "sim_696add38ef8c30.72252157",
    "server_id": "svm-docs-123",
    "action": "reboot",
    "task_id": "task_696add38ef8c1"
}

Webhook event: Emits `solus.tasks.completed` after the requested power action finishes.

Hosting

cPanel / WHM automation

Bridge reseller and managed hosting plans with cPanel account automation.

  • POST /v1/cpanel/accounts

    Provision a cPanel account by passing domain, package, username, and password or SSH key.

  • POST /v1/cpanel/accounts/{username}/suspend

    Suspend or unsuspend an account with reason codes that sync back to WHM.

  • POST /v1/cpanel/accounts/{username}/credentials

    Rotate passwords, API tokens, or trigger DNS zone rebuilds.

Account creation
{
  "domain": "shop.example",
  "username": "shop01",
  "package": "managed_wp",
  "contactEmail": "ops@example.com"
}
  • Responses include WHM task IDs plus our internal service_id for traceability.
  • DNS templates and SSL issuance can be requested with `extras` flags.
  • Suspensions automatically emit wallet/refund events when applicable.
Sample request
{
    "method": "POST",
    "url": "https://api.vastrox.cloud/v1/cpanel/accounts",
    "headers": {
        "X-API-Key": "sk_docs_public",
        "X-API-Timestamp": "1768611128",
        "X-API-Signature": "8f98f3efabd28de479f0100f2da6980dc707ad5cc260e26335fc3a3c1c58cd72"
    },
    "body": {
        "domain": "docs.vastrox.cloud",
        "username": "docsdemo",
        "package": "managed_wp",
        "contactEmail": "ops@vastrox.cloud"
    }
}
Sample response
{
    "echo": {
        "domain": "docs.vastrox.cloud",
        "username": "docsdemo",
        "package": "managed_wp",
        "contactEmail": "ops@vastrox.cloud"
    },
    "request_id": "sim_696add38ef8c99.10441109",
    "username": "docsdemo",
    "task_id": "cp_696add38ef8c8"
}

Webhook event: Emits `hosting.accounts.synced` once provisioning or credential rotation completes.

FAQ

Common questions

How are rate limits enforced?

Each workspace key can burst to 120 requests/minute with a daily allowance of 20,000 calls. Contact support if you need higher limits for bulk migrations.

Can I act on behalf of customers?

Yes. Pass the `X-Act-As` header with a client ID to scope automation to that tenant. All impersonation events are logged in the audit trail.

Where do I rotate API keys?

Admin → API Access lets you create, disable, and rotate keys. A 24-hour overlap window keeps both the old and new key valid so you can roll deployments gradually.