1. Regenerate a catalog
kind is one of service, voice, fit_criterion, or flow (flow is agent-scoped — add ?agent=sales-intake). The call is asynchronous: 202 with a catalog_generation in running.
2. Poll the run
status settle to completed, attention, or failed. attention means the material looks like it names more than got drafted — worth a look.
3. Review and accept the proposals
- Accept:
POST /resource_drafts/{id}/accept— creates the real catalog row through the same validations the dashboard uses. Idempotent. - Dismiss:
POST /resource_drafts/{id}/dismiss— permanent per fingerprint; a later regeneration never re-proposes it.

