A trunk is a named SIP/RTP egress (and ingress) profile. The public SDK refers to trunks by trunk_id when it dials. This page shows how to create and configure that trunk_id.
There is no SDK wrapper. Build the request as a serde envelope. Write it on a fresh QUIC bidirectional stream. See Raw RPC Format.

AddTrunk / UpdateTrunk

AddTrunk and UpdateTrunk accept the same DTO. Use Add for first-time provisioning. Use Update for in-place edits. Both replace the full record; there are no patch semantics. If you want to change only some fields, read the record with GetTrunk first.

Request DTO (AddTrunkRequest / UpdateTrunkRequest)

Returns Empty on success.

RemoveTrunk

Returns Empty. Existing in-flight calls continue until they end normally. New originations against a removed trunk_id fail with ERR_INVALID_TRUNK.

GetTrunk

Request: Response (GetTrunkResponse): ApiTrunkConfig: The gateway never returns the credential-bearing fields (sip_password, api_bearer_token, …). To rotate them, call UpdateTrunk again with the new values.