API referenceConsumerConsumer.devices
Request dns-01 HTTPS-cert issuance for the device's mesh names
Runs the ACME dns-01 flow for each requested mesh device name and returns the issued certs. Paid (dns_https_certs): a non-entitled tier is denied 402. A custom-domain name out of the authoritative mesh zone fails gracefully (400).
Authorization
bearer_auth AuthorizationBearer <token>
In: header
Path Parameters
id*string
Device ID
Format
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Issuance request: the cert domains the device wants certs for (the names it
surfaced in MagicDnsConfig.cert_domains).
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/consumer/v1/devices/55555555-5555-5555-5555-555555555555/certs" \ -H "Content-Type: application/json" \ -d '{ "cert_domains": [ "string" ] }'{ "certs": [ { "cert_chain_pem": "string", "expires_at": "string", "fqdn": "string", "not_before": "string", "private_key_pem": "string" } ]}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}