Home / Docs

Docs

accel.li is a multi-tenant API edge. You bring an origin; we provide subdomain endpoints, caching, throttling, protection, and observability.

Quickstart

In production, this is typically driven by your dashboard/API. Below is the conceptual flow.

# 1) Create tenant slug (example): acme
# 2) Set origin base URL:
#    https://origin.example.com
# 3) Add policies (examples):
#    - Cache GET /v1/users TTL 30s
#    - Rate limit 60 req/min per API key
# 4) Go live:
curl https://acme.accel.li/v1/users
Endpoint format
https://TENANT.accel.li
Reserved slugs
www docs status console api

Endpoints

Each tenant receives a unique subdomain. For tenant acme:

https://acme.accel.li

Use subdomains for clean isolation and precise mitigation if a tenant is reported. Path-based endpoints can be added as a fallback.

Routing & forwarding

accel.li forwards the request path and query string to your configured origin base URL. You may optionally add header transforms, rewrites, or deny/allow rules.

Incoming
GET https://acme.accel.li/v1/users?limit=50
Forwarded to origin
GET https://origin.example.com/v1/users?limit=50
Common origin settings
  • Connect timeout / read timeout
  • Max request body size
  • Origin allowlist (IP / hostname)
  • Retry policy for safe idempotent requests

Caching

Cache behavior is usually applied per route. Start conservative: cache only public GET routes, and bypass caching when an auth header is present (unless you configure a safe cache key).

Safe default
Cache GET routes with TTL, bypass when Authorization exists.
Advanced
Cache key varies by query params, selected headers, and version.
# Typical response headers you might set/observe:
Cache-Control: public, max-age=30, stale-while-revalidate=60
Age: 12
X-Accel-Cache: HIT

Rate limits & quotas

Limits can be applied per tenant and per route, keyed by API key, IP, or both. Use bursts for legitimate spikes while blocking sustained abuse.

# Example rate-limit style headers:
X-Accel-RateLimit-Limit: 60
X-Accel-RateLimit-Remaining: 17
X-Accel-RateLimit-Reset: 1700000000
Suggested starter policy
  • Anonymous: 30 req/min per IP, burst 10
  • API key: 120 req/min per key, burst 40
  • Hot routes: stricter (e.g., auth, search)

Auth patterns

accel.li supports common patterns depending on your architecture:

  • Pass-through: Your origin validates JWT/API keys.
  • Edge validation: Validate JWT signature at the edge (optional).
  • API keys: Mint keys per consumer, enforce quotas per key.
curl https://acme.accel.li/v1/orders \
  -H 'X-API-Key: <key>'

Logs & analytics

For every tenant you should expect: request volume, cache hit ratio, latency percentiles, top routes, and a searchable request log stream (with PII safeguards).

Tip
Log sampling is your friend: keep full logs for errors and sample successful requests.

Errors

accel.li returns clean edge errors when a request is blocked, rate-limited, or when an upstream fails.

429
Rate limit exceeded
403
Blocked by policy/WAF
524/5xx
Upstream timeout/failure

Security notes

  • Reserve sensitive slugs to prevent look-alike tenants.
  • Apply strict limits on auth and search routes.
  • Keep upstream private whenever possible (origin allowlists).
  • Use separate environments (dev/stage/prod) by tenant naming conventions.
Responsible use
If you need a formal compliance posture, choose an Enterprise tier and define log retention and access controls.