02 / API Reference
REST API
Base URL: https://api.omegadigitalhosting.com
All requests require: Authorization: Bearer YOUR_API_KEY
API keys are generated under Account → API Keys in the control panel.
Accounts
/v1/account Returns the authenticated account's profile, contact details, and account status.
curl -X GET https://api.omegadigitalhosting.com/v1/account \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"id": "acc_01HX4N9PKBQ3MVZRTA7CGWXE2F",
"email": "[email protected]",
"firstName": "Jane",
"lastName": "Smith",
"company": "Acme Inc.",
"phone": "+1-555-000-0001",
"status": "active",
"createdAt": "2025-03-12T08:00:00Z"
} /v1/account Update account profile fields. All fields are optional; only provided fields are updated.
curl -X PUT https://api.omegadigitalhosting.com/v1/account \
-H "Authorization: Bearer $OMEGA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"firstName": "Jane", "company": "New Corp"}' {
"id": "acc_01HX4N9PKBQ3MVZRTA7CGWXE2F",
"email": "[email protected]",
"firstName": "Jane",
"lastName": "Smith",
"company": "New Corp",
"updatedAt": "2026-04-01T14:23:11Z"
} /v1/account/ssh-keys List all SSH public keys associated with the account.
curl -X GET https://api.omegadigitalhosting.com/v1/account/ssh-keys \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"keys": [
{
"id": "key_01J2RX9ABCDEF",
"label": "MacBook Pro",
"fingerprint": "SHA256:abc123xyz...",
"createdAt": "2025-11-20T10:00:00Z"
}
]
} /v1/account/ssh-keys Add a new SSH public key to the account.
curl -X POST https://api.omegadigitalhosting.com/v1/account/ssh-keys \
-H "Authorization: Bearer $OMEGA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"label": "Work laptop", "publicKey": "ssh-ed25519 AAAA..."}' {
"id": "key_01J3NEWKEYID",
"label": "Work laptop",
"fingerprint": "SHA256:newfingerprint...",
"createdAt": "2026-04-19T09:15:00Z"
} Services
/v1/services List all active services on the account. Supports pagination via `page` and `per_page` query params.
curl -X GET "https://api.omegadigitalhosting.com/v1/services?page=1&per_page=20" \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"data": [
{
"id": "svc_01HY7M3ABCXYZ",
"type": "vps",
"sku": "VH",
"tier": "vps-m",
"label": "prod-web-01",
"region": "us-east",
"ipv4": "198.51.100.42",
"status": "running",
"createdAt": "2025-06-01T00:00:00Z"
}
],
"meta": { "page": 1, "perPage": 20, "total": 1 }
} /v1/services/:id Get full details for a single service including specs, network info, and current status.
curl -X GET https://api.omegadigitalhosting.com/v1/services/svc_01HY7M3ABCXYZ \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"id": "svc_01HY7M3ABCXYZ",
"type": "vps",
"sku": "VH",
"tier": "vps-m",
"label": "prod-web-01",
"region": "us-east",
"datacenter": "Ashburn, Virginia",
"ipv4": "198.51.100.42",
"ipv6": "2001:db8::1",
"status": "running",
"specs": { "vcpu": 4, "ramGb": 8, "diskGb": 100 },
"os": "Ubuntu 24.04 LTS",
"createdAt": "2025-06-01T00:00:00Z"
} /v1/services/:id/reboot Gracefully reboot a running service. Returns 202 Accepted; poll /v1/services/:id for status.
curl -X POST https://api.omegadigitalhosting.com/v1/services/svc_01HY7M3ABCXYZ/reboot \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"jobId": "job_01JR4REBOOT01",
"status": "queued",
"message": "Reboot queued. Poll /v1/jobs/job_01JR4REBOOT01 for status."
} /v1/services/:id Permanently destroy a service. This action is irreversible. All data will be deleted.
curl -X DELETE https://api.omegadigitalhosting.com/v1/services/svc_01HY7M3ABCXYZ \
-H "Authorization: Bearer $OMEGA_API_KEY" \
-H "X-Confirm-Destroy: yes" {
"deleted": true,
"id": "svc_01HY7M3ABCXYZ",
"message": "Service scheduled for deletion. Data will be purged within 1 hour."
} Billing
/v1/billing/invoices List all invoices, most recent first. Each invoice includes line items and payment status.
curl -X GET https://api.omegadigitalhosting.com/v1/billing/invoices \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"data": [
{
"id": "inv_01JRXYZ",
"number": "INV-2026-0042",
"status": "paid",
"totalCents": 1999,
"currency": "USD",
"issuedAt": "2026-04-01T00:00:00Z",
"paidAt": "2026-04-01T00:04:11Z",
"pdfUrl": "https://api.omegadigitalhosting.com/v1/billing/invoices/inv_01JRXYZ/pdf"
}
]
} /v1/billing/payment-methods List saved payment methods on file.
curl -X GET https://api.omegadigitalhosting.com/v1/billing/payment-methods \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"data": [
{
"id": "pm_01JRCARD",
"type": "card",
"brand": "visa",
"last4": "4242",
"expMonth": 12,
"expYear": 2028,
"isDefault": true
}
]
} Domains
/v1/domains List all domains managed under the account.
curl -X GET https://api.omegadigitalhosting.com/v1/domains \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"data": [
{
"id": "dom_01JRXYZ",
"name": "example.com",
"status": "active",
"autoRenew": true,
"expiresAt": "2027-04-19T00:00:00Z"
}
]
} /v1/domains/:name/records List all DNS records for a domain.
curl -X GET https://api.omegadigitalhosting.com/v1/domains/example.com/records \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"records": [
{ "id": "rec_01", "type": "A", "name": "@", "value": "198.51.100.42", "ttl": 300 },
{ "id": "rec_02", "type": "CNAME","name": "www", "value": "example.com", "ttl": 300 },
{ "id": "rec_03", "type": "MX", "name": "@", "value": "mail.example.com", "priority": 10, "ttl": 3600 }
]
} /v1/domains/:name/records Create a new DNS record for a domain.
curl -X POST https://api.omegadigitalhosting.com/v1/domains/example.com/records \
-H "Authorization: Bearer $OMEGA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "staging", "value": "198.51.100.99", "ttl": 300}' {
"id": "rec_04",
"type": "A",
"name": "staging",
"value": "198.51.100.99",
"ttl": 300,
"createdAt": "2026-04-19T11:00:00Z"
} Support Tickets
/v1/tickets List all support tickets, ordered by last activity descending.
curl -X GET https://api.omegadigitalhosting.com/v1/tickets \
-H "Authorization: Bearer $OMEGA_API_KEY" {
"data": [
{
"id": "tkt_01JRTICKET",
"subject": "VPS not booting after kernel update",
"status": "open",
"priority": "high",
"createdAt": "2026-04-18T16:00:00Z",
"updatedAt": "2026-04-19T08:00:00Z"
}
]
} /v1/tickets Open a new support ticket. Attach a serviceId to associate it with a specific service.
curl -X POST https://api.omegadigitalhosting.com/v1/tickets \
-H "Authorization: Bearer $OMEGA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": "Need help configuring Nginx",
"body": "I am getting a 502 after deploying...",
"priority": "normal",
"serviceId": "svc_01HY7M3ABCXYZ"
}' {
"id": "tkt_01JRNEW",
"subject": "Need help configuring Nginx",
"status": "open",
"priority": "normal",
"createdAt": "2026-04-19T12:00:00Z"
}