Compliance status

Tracks 10DLC brand and campaign approval in one place: a status badge, the carrier's rejection reason when rejected, and the assigned throughput once a campaign is approved. Polls while anything is pending and stops when everything settles.

Brand

Loading…

Campaign

Loading…

Installation

npx shadcn@latest add @handset/compliance-status

Reads GET /brands/:id and GET /campaigns/:id through your proxy. Pair it with the registration forms to show applicants where their submission stands.

Usage

import { ComplianceStatus } from "@/components/handset/compliance-status";

<ComplianceStatus brandId={brand.id} campaignId={campaign.id} />

Pass either id or both. It polls every 15s while a registration is pending and stops once it's approved or rejected. Set pollMs=0 to fetch once without polling.

Props

Props
PropTypeDefaultDescription
brandIdstring—A brand to track (brd_…).
campaignIdstring—A campaign to track (cmp_…).
pollMsnumber15000Poll interval while pending. 0 fetches once.
classNamestring—Merged onto the card.