report-ai
customer-profiles

Customer Base Health

How complete the contact base is, and which sources built it.

Every count reuses the roster's exclusions — shared operator inboxes, stay guests, and merge tombstones — so the numbers here and the number on the table agree. A health strip that disagrees with the list beneath it is worse than none.

Declared before /customer-profiles/{customer_profile_id} so the literal path wins; FastAPI matches in declaration order.

get/api/v1/report-ai/customer-profiles/health

Response

Successful Response

totalinteger required
with_emailinteger required
with_phoneinteger required
with_external_idinteger required
open_duplicate_pairsinteger required

Changes