Deevnet API #
Provisioning API, v0.12.0
The Deevnet API builds tenants on a Deevnet site: their network, DNS zone and state-store credential, their workloads and published names, and the Wi-Fi keys, registry entries, fixed addresses and MQTT broker accounts their devices need.
It is provisioning-only. Nothing at runtime depends on it being up: devices, the broker, the access point and tenant workloads all keep working without it.
Most callers never speak to it directly. A tenant declares what it wants in Terraform, and the
deevnet/deevnet provider makes the calls.
API Reference
Every route, request and response, rendered from the OpenAPI specification.
Authentication
The four kinds of token and what each may call.
Tenant Lifecycle
Admit, create, restore, resume, reconcile and delete.
Device Services
Registry, fixed addresses, Wi-Fi keys and broker accounts.
Service Certificates
A server certificate for a tenant's own service, for a name in its own zone.
Conventions
Ensures, partial objects, where secrets appear, and errors.
Configuration
Every environment variable the service reads.
Release Notes
What changed in each version, and what to do when upgrading.
A first call #
curl --cacert deevnet-root-ca.pem \
-H "Authorization: Bearer $DEEVNET_API_TOKEN" \
"$DEEVNET_API_ENDPOINT/v1/tenants/tdemo"
The specification is one file, openapi.yaml (OpenAPI 3.1). A test in the repository fails when it and the service disagree on a route or a field.