Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fc079d67c9 | |||
| 635b7b1b10 |
+6
-3
@@ -1,6 +1,6 @@
|
||||
# DNS Configuration
|
||||
|
||||
**Last updated:** 2026-05-24
|
||||
**Last updated:** 2026-05-30
|
||||
**Status:** Planned (Phase 6 pre-launch)
|
||||
|
||||
---
|
||||
@@ -28,6 +28,7 @@ kubectl get svc -n ingress-nginx ingress-nginx-controller -o jsonpath='{.status.
|
||||
| `status.leeworks.dev` | A | `<cluster-ingress-ip>` | Gatus status page | Yes (cert-manager) |
|
||||
| `registry.leeworks.dev` | A | `<cluster-ingress-ip>` | Container registry (Gitea) | Yes (cert-manager) |
|
||||
| `grafana.leeworks.dev` | A | `<cluster-ingress-ip>` | Grafana (internal/restricted) | Yes (cert-manager) |
|
||||
| `vin.leeworks.dev` | A | `<cluster-ingress-ip>` | VIN Decoder API | Yes (cert-manager) |
|
||||
|
||||
---
|
||||
|
||||
@@ -103,6 +104,7 @@ dig docs.leeworks.dev +short
|
||||
dig status.leeworks.dev +short
|
||||
dig registry.leeworks.dev +short
|
||||
dig grafana.leeworks.dev +short
|
||||
dig vin.leeworks.dev +short
|
||||
|
||||
# Check TLS certificates (once services are deployed)
|
||||
curl -v https://zip.leeworks.dev/health 2>&1 | grep -E "SSL|certificate|issuer"
|
||||
@@ -126,7 +128,7 @@ The following actions require human operator access to the DNS provider:
|
||||
|
||||
1. Log into the DNS provider managing `leeworks.dev`
|
||||
2. Find the cluster ingress IP: `kubectl get svc -n ingress-nginx ingress-nginx-controller`
|
||||
3. Create/update the 7 A records listed in the table above
|
||||
3. Create/update the 8 A records listed in the table above
|
||||
4. Verify propagation: `dig +trace zip.leeworks.dev`
|
||||
|
||||
DNS propagation typically takes 5–60 minutes.
|
||||
@@ -143,4 +145,5 @@ DNS propagation typically takes 5–60 minutes.
|
||||
- [ ] `status.leeworks.dev` → DNS record created
|
||||
- [ ] `registry.leeworks.dev` → DNS record created
|
||||
- [ ] `grafana.leeworks.dev` → DNS record created
|
||||
- [ ] TLS certificates issued and valid for all 7 subdomains
|
||||
- [ ] `vin.leeworks.dev` → DNS record created
|
||||
- [ ] TLS certificates issued and valid for all 8 subdomains
|
||||
|
||||
@@ -193,6 +193,77 @@ air quality, AQI, PM2.5, PM10, air pollution, smog, ozone, nitrogen dioxide, env
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## 4. VIN Decoder API
|
||||
|
||||
### API Name
|
||||
VIN Decoder API
|
||||
|
||||
### Tagline
|
||||
Decode any vehicle VIN into make, model, year, engine, and trim — powered by NHTSA vPIC.
|
||||
|
||||
### Short Description (≤ 300 chars)
|
||||
Decode any 17-character Vehicle Identification Number into structured vehicle data: make, model, year, trim, body style, engine specs, transmission, and assembly plant. Backed by the NHTSA vPIC public database with 90-day result caching.
|
||||
|
||||
### Long Description
|
||||
|
||||
Unlock the full story behind any Vehicle Identification Number with a single API call.
|
||||
|
||||
**What you get per VIN:**
|
||||
- Make, model, model year, and trim level
|
||||
- Body class (Sedan, SUV, Pickup, etc.) and drive type (FWD, RWD, AWD, 4WD)
|
||||
- Engine displacement (CC and litres) and cylinder count
|
||||
- Primary fuel type (Gasoline, Diesel, Electric, Hybrid, etc.)
|
||||
- Transmission style (Automatic, Manual, CVT) and speed count
|
||||
- Assembly plant city, state, and country
|
||||
- Full manufacturer name and NHTSA vehicle type classification
|
||||
- NHTSA decode error code and text for non-standard VINs
|
||||
|
||||
**Data source:** NHTSA Product Information Catalog and Vehicle Listing (vPIC) — US federal government public-domain data, always current. No licensing fees.
|
||||
|
||||
**Coverage:** Model years 1981–present. All major domestic and import manufacturers registered with NHTSA.
|
||||
|
||||
**Caching:** Decoded VINs are cached for 90 days in a local SQLite store. The `X-Cache: HIT/MISS` response header tells you whether the result came from cache or a live NHTSA lookup.
|
||||
|
||||
**Use cases:**
|
||||
- Used-car marketplaces — enrich listings with decoded specs at scale
|
||||
- Insurance platforms — auto-populate vehicle details from VIN at quote time
|
||||
- Fleet management — maintain structured vehicle inventories without manual entry
|
||||
- Automotive valuation tools — feed year/make/model/trim into pricing algorithms
|
||||
- Recall & warranty systems — match VINs to manufacturer service campaigns
|
||||
- Registration & titling apps — validate and enrich VIN data in DMV workflows
|
||||
|
||||
**Endpoints:**
|
||||
- `GET /v1/decode` — decode a single VIN
|
||||
- `POST /v1/batch` — decode up to 50 VINs in one request
|
||||
- `GET /v1/health` — service health check (no auth required)
|
||||
|
||||
### Category
|
||||
Data / Automotive / Transportation
|
||||
|
||||
### Plan Table
|
||||
|
||||
| Tier | Price/month | Requests/month | Rate limit |
|
||||
|------|-------------|----------------|------------|
|
||||
| Free | $0 | 100 req/mo | 5 req/min |
|
||||
| Basic | $9 | 5,000 req/mo | 60 req/min |
|
||||
| Pro | $19 | 20,000 req/mo | 200 req/min |
|
||||
| Ultra | $49 | 100,000 req/mo | 500 req/min |
|
||||
|
||||
### Endpoint Descriptions
|
||||
|
||||
| Endpoint | Description |
|
||||
|----------|-------------|
|
||||
| `GET /v1/decode?vin={vin}` | Decodes a single 17-character VIN. Returns structured vehicle attributes including make, model, year, engine, body, drivetrain, and plant info. Optional `?raw=true` includes the full NHTSA vPIC response. |
|
||||
| `POST /v1/batch` | Accepts a JSON body with a `vins` array (1–50 VINs). Returns one decoded result (or error) per VIN in input order, plus aggregate counts for `cached_count` and `error_count`. |
|
||||
| `GET /v1/health` | Returns service status, uptime, cache stats (entries, hit rate, size), and NHTSA upstream reachability. No `X-RapidAPI-Proxy-Secret` required. |
|
||||
|
||||
### Keywords
|
||||
VIN decoder, vehicle identification number, car lookup, NHTSA, make model year, automotive API, vehicle data, VIN lookup, auto specs, fleet management
|
||||
|
||||
---
|
||||
|
||||
## Tagline Length Validation
|
||||
|
||||
Run to confirm all taglines are ≤ 120 characters:
|
||||
|
||||
Reference in New Issue
Block a user