Unauthorized Access Prohibited
This node is a restricted infrastructure endpoint operated by NetCore Systems Ltd. Access is permitted exclusively to registered clients with valid API credentials. Unauthorized access attempts are logged, traced, and may be subject to legal action under applicable law.
Node Metrics (live)
Bandwidth out
3.84GB/s
peak: 6.12 GB/s
Active conns
1 247
limit: 8 192
Cache Hit Rate
94.7%
CPU Load
18%
RAM Used
41.2%
Req/s (avg)
8 340
↑ 12% vs prev. hour
Avg Latency
14ms
P99: 38ms
Errors (5m)
3
prev. 5m: 1
Recent System Events
Node Summary
| Hostname | srv-cdn-eu-03.netcore-sys.net |
| IP Address | 185.211.48.3 |
| Region | EU-WEST / AMS-DC2 |
| Software | NCore-CDN/2.14.1 (nginx/1.25.4 base) |
| Storage Total | 114.7 GB / 2.0 TB |
| TLS | TLSv1.3 / ECDHE-RSA-AES256-GCM-SHA384 |
| Registered Clients | 47 domains |
| Node Status | operational |
Asset Browser
Public Index Sample (read-only, unauthenticated)
| Path | MIME | Size | Modified | Cache | Status |
|---|---|---|---|---|---|
| /pub/sample-bg-01.webm | video/webm | 48.2 MB | 2025-03-12 | HIT | 200 |
| /pub/placeholder-1920.jpg | image/jpeg | 1.1 MB | 2025-01-08 | HIT | 200 |
| /pub/loader-ui.min.js | text/javascript | 84 KB | 2025-04-22 | HIT | 200 |
| /pub/inter-var.woff2 | font/woff2 | 218 KB | 2024-11-30 | HIT | 200 |
| /restricted/... | — | — | — | — | 401 |
API Reference — v2 (current)
Authentication Required
All endpoints except
/api/v2/status and public asset paths require a valid API token passed via Authorization: Bearer <token> header. Tokens are bound to client domain and IP range.
GET
/api/v2/status
Public. Node health check.
Returns: application/json — No auth required.
// Response 200
{
"node": "eu-03",
"status": "operational",
"version": "2.14.1",
"ts": 1748293841
}
GET
/api/v2/assets
List assets. Requires auth.
Query: ?prefix= ?mime= ?limit= ?cursor=
// curl example
curl -H "Authorization: Bearer $TOKEN" \
"https://srv-cdn-eu-03.netcore-sys.net/api/v2/assets?prefix=video-bg/"
POST
/api/v2/assets/upload
Upload new asset. Requires auth.
Body: multipart/form-data — field: file, optional: path, cache_ttl
// Response 201
{
"id": "as_2f9k1a...",
"path": "video-bg/my-asset.webm",
"url": "https://srv-cdn-eu-03.netcore-sys.net/assets/video-bg/my-asset.webm",
"size": 50436218,
"mime": "video/webm"
}
DELETE
/api/v2/assets/{id}
Delete asset by ID. Requires auth.
Path param: {id} — asset ID string
// Response 204 No Content on success
// Response 403 if asset belongs to different client
POST
/api/v2/cache/purge
Purge cache for path pattern. Requires auth.
Body: application/json — { "pattern": "glob" }
{
"pattern": "images/hero/*"
}
// Response 200 { "purged": 14 }
GET
/api/v2/metrics
Per-client bandwidth & hit stats. Requires auth.
Query: ?from= (unix ts) ?to= (unix ts) ?granularity=hour|day
# Obtaining a token
# POST /api/v2/auth/token
# Content-Type: application/json
{
"client_id": "your-client-id",
"secret": "your-client-secret",
"scope": "assets:read assets:write cache:purge"
}
# Response 200
{
"access_token": "eyJ0eXAi...",
"token_type": "Bearer",
"expires_in": 86400,
"scope": "assets:read assets:write cache:purge"
}
# Token usage
Authorization: Bearer eyJ0eXAi...
Tokens expire after 24h. Refresh tokens are issued on registration. IP binding is enforced per token.
Contact your account manager to obtain
Contact your account manager to obtain
client_id and client_secret.
Object Schema — Asset
{
"id": "string", // Unique asset identifier
"path": "string", // Relative storage path
"url": "string", // Full CDN URL
"mime": "string", // MIME type
"size": "integer", // Bytes
"sha256": "string", // Hex digest
"client_id": "string", // Owning client
"cache_ttl": "integer", // Cache TTL in seconds
"created_at": "integer", // Unix timestamp
"node": "string", // Serving node ID
"replicated": "boolean" // Synced across nodes
}
| Code | Description | Notes |
|---|---|---|
| 200 | OK | — |
| 201 | Created | Asset uploaded successfully |
| 204 | No Content | Delete successful |
| 400 | Bad Request | Malformed request body or missing params |
| 401 | Unauthorized | Missing or invalid token |
| 403 | Forbidden | Token valid but lacks required scope |
| 404 | Not Found | Asset or endpoint does not exist |
| 413 | Payload Too Large | Upload exceeds 500 MB per file limit |
| 429 | Too Many Requests | Rate limit: 1 000 req/min per token |
| 500 | Internal Server Error | Contact support with request ID |
Registered Client Domains
Public Client Directory (partial)
| Domain | Plan | Since | Bandwidth (30d) | Status |
|---|---|---|---|---|
| **.client-a.example | Enterprise | 2023-06 | 4.1 TB | active |
| **.client-b.example | Pro | 2024-01 | 812 GB | active |
| **.client-c.example | Pro | 2024-09 | 220 GB | review |
| [44 more hidden] | — | — | — | auth req. |
Access Log Stream
Showing: public access log (unauthenticated view)
Full request logs, client IDs, and IP data are available only to authenticated administrators. The stream below shows aggregated public-tier events.