GET /v1/connections lists the account's numbers (read-only). Each carries its id (conn_…), label/externalId (your reseller identity), displayPhone, and health: metaStatus (connected/pending/flagged/restricted/disconnected), qualityRating, messagingTier. The only thing mutable via the API is the reseller identity: PATCH /v1/connections/:id (label, externalId, monthlyMessageLimit, notes).
curl https://api.waiaconnect.com/v1/connections \
-H "Authorization: Bearer wc_live_YOUR_API_KEY"
# → { "connections": [ { "id": "conn_…", "label": "…", "externalId": "…",
# "displayPhone": "…", "metaStatus": "connected", "qualityRating": "…" } ] }externalId is unique per account and travels in every webhook (envelope.connection.externalId) → you need no mapping table.