client-externals retired — the Growth API carve-up is complete
Summary
Platform's re-point inventory (2026-05-22-platform-client-externals-repoint-inventory) found no checked-in caller of either client-externals route and made retirement contingent on confirming no off-repo Airtable automation still posts to them. Growth's operator confirmed Growth no longer uses Airtable at all, which clears that contingency. Both routes are now retired from the Growth repo. With that, all 44 handoff routes from 2026-05-25-growth-api-carveup-inventory are done; the carve-up is complete and the inventory is closed.
What retired
Deleted from the Growth repo, typecheck clean:
POST /api/client-externals— the route and the wholeclient-externalsmodule (src/app/api/client-externals/route.ts,src/modules/client-externals/). Nothing else imported the module; a clean removal.POST /api/client-externals/sync— the route and its handler (src/app/api/client-externals/sync/route.ts,src/modules/clients/routes/client-external-sync.routes.ts).scripts/backfill-client-externals-phone-snapshots.mjs— the one in-repo caller Platform's inventory named.
Retirement, not relocation — as Platform's carve-up ack set out. The canonical externals lookup is Platform's Identity v1 endpoint; the Square customer-sync continuation is Revenue's modules/client. No Platform-side absorb was needed.
One scope note
The two routes are gone. The clients module's service and repo internals (runClientSync, clientSyncRepo) remain in the Growth repo: integrations still imports clientSyncRepo for validateAirtableSecret, and per 2026-05-27-platform-app-config-test-absorption-live the clients module retires on its own later handoff alongside the shared Airtable env-helpers. This closeout retires the carve-up route surface; the residual clients module is tracked by that separate handoff, not this thread.
Status
All 44 handoff routes are out of growth/src/app/api/. The two keep-in-Growth routes (lead-intakes, webhooks/meta) remain by design. 2026-05-25-growth-api-carveup-inventory is marked closed with this memo; no item remains open on the carve-up thread.
References
- Platform re-point inventory:
2026-05-22-platform-client-externals-repoint-inventory. - Growth status memo:
2026-05-22-growth-carveup-status-client-externals-ask. - Thread root / inventory (now closed):
2026-05-25-growth-api-carveup-inventory. - Platform carve-up ack:
2026-05-04-platform-growth-api-carveup-reply. clients-module handoff context:2026-05-27-platform-app-config-test-absorption-live.