Preview — pending review
This reference is generated from the platform API contract and is still under review. Operations, fields, and descriptions can change before publication.
List IPsec site connections in the active scope
Returns the paginated collection of IPsec site connections in the active scope, mirroring neutron-VPNaaS
ipsec_site_connections. Each row references - never copies - the VPN service it terminates on, the IKE
and IPsec policies it negotiates with and the local and peer endpoint groups that define the two ends,
plus the peer gateway address, initiator mode, DPD settings, MTU, administrative state, neutron's own
status and the last provider failure reason. The pre-shared key is NEVER present in any read.
Validation: scopeId must resolve to an accessible scope; paging/sort parameters must be well-formed
(-> 422); status, vpnServiceId and ikePolicyId filters narrow the table server-side; caller needs the
reader role.
Async & state: Synchronous read; status reflects the latest provider reconciliation and is null until
neutron has reported one. resource.updated SSE frames (kind: network.vpn_site_connection) keep open list
views current.
Errors: 401; 403; 422; 500.
Idempotency/Concurrency: Safe, cacheable. Soft-deleted connections are excluded.
bearerTokenAuthorizationBearer <token>An API token (pc_live_…) or a service-account key (sak_live_…), created in Identity & Access Management and sent as Authorization: Bearer <token>. Requests are rate limited per credential and per tenant: every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and a refused request gets 429 RATE_LIMITED with Retry-After.
scopeId*stringOpaque ownership+authorization scope resolving to tenant + subscription + project.
region?stringRestrict the result set to a single region.
^[a-z][a-z0-9-]{1,39}$q?stringFree-text search.
sort?stringField to sort by (entity-specific; defaults to the entity's natural order).
order?stringSort direction.
"asc""asc""desc"page?integer1-based page number.
1 <= value1pageSize?integerItems per page (max 200).
1 <= value <= 20050status?stringFilter by the provider-reported connection status.
"ACTIVE""DOWN""PENDING_CREATE""PENDING_UPDATE""PENDING_DELETE""INACTIVE""ERROR"vpnServiceId?stringFilter to connections terminating on the given VPN service.
Paginated collection of IPsec site connections in the active scope.
application/json- response
data*array<>meta*Pagination envelope metadata. List responses are always { data, meta } — never a naked array.
curl -X GET "https://example.com/scopes/string/network/vpn/site-connections"{ "data": [ { "origin": "portal", "id": "string", "name": "string", "description": "string", "vpnServiceId": "string", "ikePolicyId": "string", "ipsecPolicyId": "string", "localEndpointGroupId": "string", "peerEndpointGroupId": "string", "localId": "string", "peerAddress": "string", "peerId": "string", "initiator": "bi-directional", "dpdAction": "hold", "dpdInterval": 1, "dpdTimeout": 2, "mtu": 68, "adminStateUp": true, "status": "ACTIVE", "statusReason": "string", "statusReasonCode": "string", "provisioningState": "PENDING_CREATE", "providerId": "string" } ], "meta": { "page": 1, "pageSize": 1, "total": 0, "hasNext": true }}