# Window Tint API
> Window-tint maths as an API, computed locally and deterministically — the net VLT numbers an installer or car owner picks a film by. The catch with tint is that visible light transmission multiplies through layers: factory automotive glass already passes only about 70–80 % of light, so a film’s rated VLT is not what you end up with. The vlt endpoint multiplies it out — net % = the product of each layer’s VLT ÷ 100 — so a 35 % film on 78 % factory glass nets 27.3 %, a 5 % limo film on the same glass nets 3.9 %, and you can stack several layers in one call; it also describes how dark that looks, from near-clear down to blackout. The required endpoint runs it backwards: to land on a target net VLT through known glass you need a film of target ÷ glass × 100, so hitting a 35 % net on 78 % glass takes a 44.9 % film — and it flags the impossible case where the target is lighter than the bare glass already allows. Everything is computed locally and deterministically, so it is instant and private. Ideal for auto-tint, detailing, glass and automotive app developers, film-selection and compliance tools, and shop software. Pure local computation — no key, no third-party service, instant. Legal limits vary by jurisdiction — check local law. Live, nothing stored. 2 compute endpoints.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/windowtint-api/..."
```

## Pricing
- **Free** (Free) — 6,480 calls/Mo, 2 req/s
- **Starter** ($4/Mo) — 54,200 calls/Mo, 6 req/s
- **Pro** ($12/Mo) — 225,500 calls/Mo, 15 req/s
- **Mega** ($38/Mo) — 1,312,000 calls/Mo, 40 req/s

## Endpoints

### Tint

#### `GET /v1/required` — Required film VLT

**Parameters:**
- `target_vlt` (query, required, string) — Target net VLT % Example: `35`
- `glass_vlt` (query, optional, string) — Factory glass VLT % (default 78) Example: `78`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/windowtint-api/v1/required?target_vlt=35&glass_vlt=78"
```

**Response:**
```json
{
    "data": {
        "note": "Required film VLT = target net ÷ glass VLT × 100. Round to a real film grade (5, 20, 35, 50, 70 %). Buy slightly lighter than your legal limit, since installers measure the net result.",
        "inputs": {
            "glass_vlt": 78,
            "target_vlt": 35
        },
        "achievable": true,
        "required_film_vlt_percent": 44.87
    },
    "meta": {
        "timestamp": "2026-06-06T07:13:55.882Z",
        "request_id": "e5514732-db91-4ab0-bb3b-6469c8bbebcd"
    },
    "status": "ok",
    "message": "Required film VLT",
    "success": true
}
```

#### `GET /v1/vlt` — Net VLT through layers

**Parameters:**
- `film_vlt` (query, optional, string) — Film VLT % Example: `35`
- `glass_vlt` (query, optional, string) — Factory glass VLT % (default 100) Example: `78`
- `layers` (query, optional, string) — Comma list of VLT % for stacked layers Example: `35,78`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/windowtint-api/v1/vlt?film_vlt=35&glass_vlt=78&layers=35%2C78"
```

**Response:**
```json
{
    "data": {
        "note": "VLT multiplies through layers: net % = product of each layer's VLT ÷ 100. Tint film is rated on its own, but factory glass already blocks some light (around 70–80 % VLT), so the net result on the car is darker than the film's number. Lower VLT = darker.",
        "inputs": {
            "layers": [
                35,
                78
            ]
        },
        "appearance": "dark",
        "net_vlt_percent": 27.3
    },
    "meta": {
        "timestamp": "2026-06-06T07:13:55.974Z",
        "request_id": "9353c9fe-8fb1-44e0-9aa7-79a5958d1a05"
    },
    "status": "ok",
    "message": "Net VLT",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/windowtint-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "notes": "VLT is the percent of visible light that passes through. Layers multiply: net = product of (layer ÷ 100). Factory glass is ~70–80 % VLT. Lower % is darker. Legal minimums vary by jurisdiction and window — check local law.",
        "service": "windowtint-api",
        "endpoints": {
            "GET /v1/vlt": "Net visible light transmission from film + glass (or a list of layers).",
            "GET /v1/meta": "This document.",
            "GET /v1/required": "Film VLT needed to reach a target net VLT through known glass."
        },
        "description": "Window-tint maths: net VLT when layers stack, and the film VLT needed to hit a target net VLT."
    },
    "meta": {
        "timestamp": "2026-06-06T07:13:56.047Z",
        "request_id": "5b3090cb-f906-4c0a-a7ad-aadeae4747b4"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/windowtint-api
OpenAPI spec: https://www.oanor.com/api/windowtint-api/openapi.json
