overlay: 1.0.0
info:
title: API Evangelist enhancements for the Zero Networks Platform API
version: 1.0.0
x-generated: '2026-09-05'
x-method: generated
x-source: openapi/zero-networks-platform-openapi.yaml
x-note: >-
Captures the API Evangelist enrichment layer over the provider's own OpenAPI 3.0.1
(info.version 1.26.3, harvested verbatim from
https://raw.githubusercontent.com/zeronetworks/zeronetworks-python-sdk/master/.speakeasy/out.openapi.yaml).
The original spec is never mutated. The single most consequential action here is the
servers[] correction: the published contract declares
https://portal.zeronetworks.com/v1/api, which returns HTTP 404 (nginx) on every path we
probed, while https://portal.zeronetworks.com/api/v1 returns the API's own JSON 401
envelope. This overlay records the live base as an ADDITIONAL server and leaves the
vendor-declared one in place rather than removing it.
extends: ./openapi/zero-networks-platform-openapi.yaml
actions:
- target: $.info
update:
x-api-evangelist-profile: https://apis.io/provider/zero-networks
x-documented-operation-coverage: >-
40 of 1,596 declared paths (2.5%) carry any operation object; the remaining 1,556
path items are published empty. The contract advertises the full platform surface
(assets 588, k8s 211, groups 210, protection 183, users 164, settings 136) but
documents only the segmentation-rule and custom-group subset the Speakeasy SDK
targets were generated for.
- target: $.servers
update:
- url: https://portal.zeronetworks.com/api/v1
description: >-
Live customer base URL, probed 2026-09-05. Returns the API's JSON error envelope
({"error":"unauthorized","message":"jwt authorization not found"}) with HTTP 401
on /audit and /assets. The vendor-declared server below (/v1/api) returns nginx
404 on the same paths.
x-api-evangelist-verified: probed
- target: $.components.securitySchemes.api_key
update:
description: >-
API token minted in the Zero Networks console under Settings > API ("Generate API
Token"), sent verbatim in the Authorization request header. It is not an OAuth
bearer token and carries no "Bearer " prefix in the scheme definition. Token
privilege is governed by the account role model in components.schemas.userRole,
where role 4 is API-FullAccess and role 5 is API-ReadOnly.
- target: $.components.schemas.error
update:
description: >-
The uniform error envelope for every 4xx/5xx response across the API. Confirmed
live against https://portal.zeronetworks.com/api/v1/audit on 2026-09-05. Not
RFC 9457 application/problem+json — a bare {error, message} object served as
application/json.
x-api-evangelist-observed-example:
error: unauthorized
message: jwt authorization not found
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.