A control-plane dashboard for revenue, usage, API keys, placement config, and decision logs.
- Onboarding
- Revenue
- Usage
- API Keys
- Placement
- Logs
npm install
npm run devThe SPA always calls same-origin /api/*.
GET/POST /api/v1/*(control-plane routes) are proxied toMEDIATION_CONTROL_PLANE_API_BASE_URL.POST /api/v2/bidis proxied toMEDIATION_RUNTIME_API_BASE_URLwhen set, otherwise falls back toMEDIATION_CONTROL_PLANE_API_BASE_URL.- Removed routes now return
410:GET /api/v1/public/sdk/bootstrapPOST /api/v1/public/runtime-domain/verify-and-bindPOST /api/v1/public/runtime-domain/probePOST /api/ad/bid
npm run buildnpm run check:env
npm run check:dead-code
npm run lint
npm test
npm run test:smoke
npm run buildMEDIATION_CONTROL_PLANE_API_BASE_URL(required in production)- Example:
https://<your-control-plane-origin>/api
- Example:
MEDIATION_RUNTIME_API_BASE_URL(optional runtime override)- Example:
https://<your-runtime-origin>/api
- Example:
MEDIATION_CONTROL_PLANE_API_PROXY_TARGET(optional, local Vite dev only)- Default:
http://127.0.0.1:3100
- Default:
- Required:
- Generate runtime key
- Call
POST /api/v2/bid
- Not part of current direct integration path:
sdk/bootstrap- runtime bind/probe flow
- SDK event reporting route
No bid with HTTP 200 is a valid business result (not an integration error).
Dashboard auth uses cookie sessions.
dash_session: HttpOnly + Secure + SameSite=Lax + Path=/dash_csrf: Secure + SameSite=Lax- Browser write requests send
x-csrf-tokenfromdash_csrf - Dashboard APIs use cookie + CSRF by default
- Import this repo in Vercel.
- Set
MEDIATION_CONTROL_PLANE_API_BASE_URLfor Preview and Production.- Optional: set
MEDIATION_RUNTIME_API_BASE_URLonly when runtime traffic must go to a different origin.
- Optional: set
- Add GitHub repository secrets:
VERCEL_TOKENVERCEL_ORG_IDVERCEL_PROJECT_IDNODE_AUTH_TOKEN(optional, only if private npm packages are required)
- PRs deploy Preview; pushes to
maindeploy Production.
dependabot.ymlopens weekly npm/actions update PRs.hygiene-weekly.ymlruns weekly safety checks:- env contract
- dead code scan
- lint + unit + smoke
- build regression
- production dependency audit