---
title: "REST API"
description: "Manage every Edge resource over HTTPS. The same API that powers the Edge console and CLI, authenticated with API keys."
url: https://edge.network/docs/api/
---

# REST API

# REST API

Everything you can do in the Edge console, you can do over HTTPS. The REST API is the same API
that powers the console and the [Edge CLI](https://edge.network/docs/cli) —
there is no separate, cut-down surface for programmatic access.

## Base URL

```
https://edge.network/api
```

All requests use HTTPS. Request and response bodies are JSON — send
`Content-Type: application/json` on
`POST`,
`PUT`, and
`PATCH` requests.

## Authentication

Authenticate with an API key passed as a Bearer token. Keys are created in the console and
start with `ek_live_`.

```
curl https://edge.network/api/compute/vms \
  -H "Authorization: Bearer ek_live_..."
```

See [Authentication](https://edge.network/docs/api/authentication) for
creating and managing keys.

## Quick Start: Create a VM

```
curl -X POST https://edge.network/api/compute/vms \
  -H "Authorization: Bearer ek_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "web-01",
    "osTemplate": "ubuntu-24.04",
    "vcpu": 2,
    "ram": 4,
    "disk": 80,
    "region": "london"
  }'
```

The response includes the new VM object and, if no SSH key was attached, a generated root password.
Full request and response details are on the [Compute API](https://edge.network/docs/api/compute) page.

## API Reference

| Product | Base Path | Covers |
| [Compute](https://edge.network/docs/api/compute) | /api/compute | VMs, SSH keys, firewall, startup scripts, backups |
| [CDN](https://edge.network/docs/api/cdn) | /api/cdn | Deployments, domains, cache purging, analytics |
| [DNS](https://edge.network/docs/api/dns) | /api/dns | Zones, records, nameservers |
| [Storage](https://edge.network/docs/api/storage) | /api/storage | Buckets, S3 access keys, objects, presigned URLs |
| [Shield](https://edge.network/docs/api/shield) | /api/shield | Widget management and stats |

## Errors

Errors return an appropriate HTTP status code and a JSON body with a message and a stable machine-readable code:

```
{
  "error": "VM not found",
  "code": "NOT_FOUND"
}
```

See [Errors](https://edge.network/docs/api/errors) for the full list of
codes and rate-limit behaviour.

## Rate Limits

Requests are rate limited to **600 requests per minute per IP** across the API.
Every response includes `X-RateLimit-Limit` and
`X-RateLimit-Remaining` headers; exceeding the
limit returns `429` with a
`Retry-After` header.

## Other Ways to Integrate

[Edge CLI A command-line client for this API. Ideal for scripts and CI pipelines.](https://edge.network/docs/cli) [Agent API A self-describing API for AI agents, with scoped tokens, budgets, and dry-run support.](https://edge.network/docs/agent)
[Back to Docs](https://edge.network/docs) [Need help?](https://edge.network/support)
