feat(ines/phase1): Fondations + CRUD Agent & Numéros (P0)
Phase 1 — Fondations + CRUD Agent & Numéros
Stack
-
mc-starter-parent1.0.63 — identiqueiavia-agent-service-community-manager -
iavia-common0.0.144 - Spring Boot 3.x, Java 17, PostgreSQL + Flyway
Migrations Flyway
-
V1: tablesphone_agent+phone_number
Entités JPA (dans le service)
-
PhoneAgent: config complète agent vocal (voix/LLM/script/forwarding/scheduling/STT/Vapi) -
PhoneNumber: lié à l'agent, multi-provider
Enums locaux
AgentStatus, NumberProvider, NumberStatus, WizardStep, VapiSyncStatus
Endpoints exposés
Agents (/api/phone-agent/agents) :
-
POST /— créer un agent (headerX-USER-UID) -
GET /{agentUid}— détail -
GET /owner/{ownerAdminUid}— liste par tenant -
PUT /{agentUid}— mise à jour -
DELETE /{agentUid}— archivage logique POST /{agentUid}/activate|deactivate|toggle-status-
POST /{agentUid}/sync-vapi— stub Phase 1 → Phase 2 -
GET /wizard-status/{ownerAdminUid}— reprise wizard
Numéros (/api/phone-agent/numbers) :
-
GET /agent/{agentUid}— numéros d'un agent -
GET /owner/{ownerAdminUid}— numéros d'un tenant -
GET /{numberUid}— détail -
POST /agent/{agentUid}/provision— ajouter un numéro -
DELETE /{numberUid}— libérer
Util
-
UserServiceClient—GET /api/user/admins/{uid}+ collaborateur (§9.2)
Config
-
SecurityConfiguration,SwaggerConfig,GlobalExceptionHandler -
Paths.java— tous les endpoints Phases 1-5 documentés