Services
18 deployable Serverless services share one API Gateway REST API. Most services own deployed HTTP routes; SQS/EventBridge-style workers are documented separately and are not counted as deployed HTTP unless API Gateway mounts them.
OpenAPI contains 75 documented operations: 66 deployed HTTP operations and 9 local HTTP replay harnesses for queue-driven workers.
Service index
| Service | OpenAPI ops | Local harnesses | Description | Docs | API |
|---|---|---|---|---|---|
| ads | 1 | 0 | Tagless-ad tracking | ads | API |
| auth | - | - | Source-managed service is absent; retained as an exclusion note | auth | - |
| autograb | 10 | 0 | Vehicle data + valuation (Autograb/Tailpipe) | autograb | API |
| cachewarm | 2 | 0 | Cache warming | cachewarm | API |
| canbus | 2 | 0 | Telemetry bus / Timestream queueing | canbus | API |
| cfs | 3 | 0 | Carsforsale REST proxy | cfs | API |
| cloudflare | 1 | 0 | Cloudflare redirect operations | cloudflare | API |
| cmstosocial | 0 | 0 | CMS-to-social worker (SNS/SQS only) | cmstosocial | - |
| geo | 2 | 0 | Geo-IP detection | geo | API |
| leads | 21 | 8 | Lead lifecycle pipeline | leads | API |
| marketing | 7 | 1 | Email subscriptions + transactional email | marketing | API |
| marketplace | 8 | 0 | Marketplace helpers (colours, finance, click-to-call) | marketplace | API |
| ml | 1 | 0 | ML inference (image labels) | ml | API |
| oly | 1 | 0 | OLY novated-lease calculator | oly | API |
| preview | - | - | Source-managed service is absent; retained as an exclusion note | preview | - |
| purge | 6 | 0 | Cache purge + content transitions | purge | API |
| root | 1 | 0 | API root utilities (robots.txt) | root | API |
| social | 4 | 0 | Share/comment counts | social | API |
| syndication | 4 | 0 | Search indexing + partner feeds | syndication | API |
| udp | 1 | 0 | Snowflake external-function proxy | udp | API |
Total: 75 documented operations across 18 deployable services: 66 deployed HTTP operations, 9 local worker harnesses. auth and preview do not currently have checked-in serverless.yml service definitions and are not deployable services from this repository state.
Documenting a service
To scaffold a service page from its serverless.yml:
cd docs/site
node scripts/init-service-docs.mjs <service>Then author the OpenAPI spec at openapi/<service>.yaml and add prose to pages/services/<service>/index.mdx. The yarn validate:openapi script (run in yarn build) cross-checks every spec path against serverless.yml to catch drift.
See DOCS_GUIDELINES.md for the full authoring guide.