pfcloud / Developers

API reference

DNS

Every DNS endpoint: scope, parameters and body fields.

Base URL https://pfcloud.pfctek.com/api/v1. Every call needs Authorization: Bearer mf_…. Changes accept an Idempotency-Key header. Ids are public ids (UUIDs).

GET /sites/{site}/dns

DNS records a site needs

Scope: dns:read

For the domain and each alias: ok (points at the server), create (pfcloud can add it), elsewhere (points at another address; never changed) or manual (no connection manages the domain), with the connection that manages it.

Parameter In Description
site path Public id from the dashboard address (required)

POST /sites/{site}/dns

Create missing DNS records

Scope: dns:write

Adds the missing A records through the team's DNS connection, like "Let pfcloud add the records" on the site page. Records that point elsewhere are never changed. HTTPS follows a few minutes later. Answers created, skipped (elsewhere) and manual names.

Parameter In Description
site path Public id from the dashboard address (required)

GET /dns/zones

Domains pfcloud can manage

Scope: dns:read

Names of the domains the team's DNS connections manage.

GET /dns/suggestions

Free subdomains for a new site

Scope: dns:read

Parameter In Description
zone query A domain from /dns/zones (required)
repository query Repository URL or name, e.g. acme/shop-api
type query Site type, e.g. laravel, node, static
environment query Environment name, e.g. staging