TorbatYar/backend/services/experience/README.md
Mortezakoohjani 0d424c500a feat(platform): complete commercial runtime consolidation
Unify commercial runtime ownership across backend and frontend so platform, experience, and hospitality modules use the shared commercial source of truth.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 11:11:53 +03:30

55 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Experience Platform (Torbat Pages)
Independent multi-tenant Experience Platform service.
| Field | Value |
| --- | --- |
| Service | `experience` |
| Commercial product | Torbat Pages |
| Database | `experience_db` |
| Port | 8008 |
| Phase | 11.10 Analytics, AI Content & Enterprise Validation (track complete) |
| Version | 0.11.10.0 |
| Permissions | `experience.*` |
## Endpoints
- `GET /health` · `/capabilities` · `/metrics`
- Foundation / sites / components / themes / templates / locales / media (prior phases)
- `/api/v1/forms` · `/api/v1/form-submissions`
- `/api/v1/surveys` · `/api/v1/survey-responses`
- `/api/v1/appointment-pages` · `/api/v1/appointment-booking-refs`
- `/api/v1/publish-releases` · `/api/v1/domain-edge-bindings`
- `/api/v1/seo-metadata` · `/api/v1/sitemap-shells` · `/api/v1/robots-shells`
- `/api/v1/pwa-manifests`
- `/api/v1/bundle-definitions` · `/api/v1/tenant-bundles`
- `/api/v1/license-bindings` · `/api/v1/feature-toggles`
- `/api/v1/consumer-connector-registrations` · `/api/v1/consumer-connector-dispatches`
- `/api/v1/widget-definitions` · `/api/v1/widget-instances`
- `/api/v1/notify-dispatches`
- `/api/v1/analytics-report-definitions` · `/api/v1/analytics-snapshots` (+ `POST /refresh`)
- `/api/v1/ai-content-hook-registrations` · `/api/v1/ai-content-dispatches` (+ `POST /{id}/generate`)
## Architecture
API → Commands/Queries → Service → Repository → Model. Tenant via `X-Tenant-ID`. Integrations via API/Events only ([ADR-016](../../../docs/architecture/adr/ADR-016.md)). Analytics uses local COUNT on `experience_db` only. AI content uses `AIProvider` contracts with mock adapter; no model inference ownership.
## Docs
- [Experience Phase 11.10](../../../docs/experience-phase-11-10.md)
- [Phase handover 11.10](../../../docs/phase-handover/phase-11-10.md)
- [Enterprise audit 11.10](../../../docs/experience-phase-11-10-audit.md)
- [Experience roadmap](../../../docs/experience-roadmap.md)
- [Experience frontend roadmap (FE-11.011.5)](../../../docs/experience-frontend-roadmap.md)
## Seed demo data
```bash
cd backend/services/experience
set AUTH_REQUIRED=false
set EXPERIENCE_SEED_TENANT_ID=<your-tenant-uuid>
python scripts/seed_experience.py
```
Creates demo workspace, site, page, form, and template. Prints resource IDs and tenant header to use in the UI.