API: agent phone numbers are provisioned on a single carrier

POST /v1/agents/phone-numbers/purchase now places every new number on the same carrier (Telnyx), and the available-number search returns that carrier’s inventory only. Omit provider and the platform picks it for you — the recommended call, and what the console does.

provider: "twilio_purchased" is retired for new purchases and now returns 400 validation_failed, naming the provider to send instead. The value stays in the PhoneNumberProvider enum, and nothing changes for numbers already bought on it: they are listed, released, dialled and billed exactly as before.

Only an integration that hardcodes the provider on the purchase request is affected. One that omits provider, or echoes back the value the available-number search returned, needs no change.

No version pin is involved — the response shape is unchanged, and telnyx_purchased has been a valid type on returned numbers since 2026-06-25, so a tolerant reader already handles it. See Phone numbers.