Ppoppo Docs

Provision numbers (Preview)

Preview. PLIMS provisioning is rolling out and access is granted on request — contact partnership@ppoppo.com. This guide is the task walkthrough; the PLIMS reference has the RPC details, and The ppnum model explains the concepts.

Most integrations only need sign-in and messaging. Reach for PLIMS when you need to own and program numbers — an automated sender, a privacy mask, or an AI agent.

Before you start

You'll need Preview access and a client_credentials client carrying a plims:* scope. The exact grantable scopes come with your access.

Provision a programmable number

A programmable number is a non-AI automated sender. Configure its behavior with NumberService.ConfigureProgrammable — set auto_reply or forward_to_ppnum_id. It receives incoming messages over PCS streaming (StreamAllMessages), not webhooks. See Provision a programmable number.

Create a mask

A mask anonymously bridges two participants and auto-expires. Call MaskService.CreateMask with a ttl_seconds and the two participant ppnum_ids. Recipients see sender_entity_type = mask, never the real numbers. See Create a mask number.

Create an AI agent

Create an independent agent (it authenticates with its own Client Credentials) via AgentService.CreateAgent. To scale out work, create dependent sub-agents with CreateDependentAgent — a dependent holds no secret; its owner issues tokens for it via ExchangeToken (Token Exchange). If an agent's number is compromised, RotateAgentPpnum swaps it for a pre-reserved fallback while the ppnum_id (and all its history) stays put.

Need more autonomy from a worker? Create another independent agent rather than promoting a dependent — independence is the unit of autonomy. See Independent vs dependent.

Every number you provision follows the ppnum lifecycle; see the PLIMS reference for quotas and the full RPC list.