Stream Egress Events
Streams egress proxy decisions live, optionally narrowed to one job/sandbox. When since_unix is set, history from that time is replayed first; clients dedupe the overlap by event_id. Unimplemented when the event feed is not enabled.
Access: namespace VIEWER or above (read). namespace is required unless the caller is a platform admin, for whom empty covers every namespace.
Authorization
BearerAuth A namespace-scoped API key (cpk_…) for machines, or a Xeonr Auth OIDC
token for humans. The key's namespace and role are pinned server-side.
In: header
Header Parameters
Define the version of the Connect protocol
Define the timeout, in ms
Request Body
application/connect+json
Required for everyone but a platform administrator, for whom empty streams every namespace.
length <= 64optional filter
length <= 256optional replay window before going live; 0 = none
int640 <= valueResponse Body
application/connect+json
application/connect+json
curl -X POST "https://containers.xeonr.io/containers.api.v1.EgressPolicyService/StreamEgressEvents" \ -H "Connect-Protocol-Version: 1" \ -H "Connect-Timeout-Ms: 1000" \ -H "Content-Type: application/connect+json" \ -d ''{
"event": {
"principalId": "string",
"namespace": "string",
"atUnix": "string",
"host": "string",
"port": 0,
"method": "string",
"path": "string",
"status": 0,
"bytes": "string",
"decision": "DECISION_UNSPECIFIED",
"eventId": "string",
"detail": "string"
}
}{
"code": "not_found",
"message": "string",
"details": [
{
"type": "string",
"value": "string",
"debug": {}
}
]
}List Egress Policies POST
Lists named egress policies, most recently updated first. page_size defaults to 100 and is clamped to 1000. **Access:** namespace VIEWER or above (read). `namespace` is required unless the caller is a platform admin, for whom empty covers every namespace.
Update Egress Policy POST
Renames and/or replaces a named policy. An empty name or unset policy leaves that part unchanged. **Access:** namespace OPERATOR or above (write)