How far the install got, and what stopped it.

get/v1/installations/{id}/install

Request

  • The document declares no server URL.
  • Auth: one of:
    • HTTP bearer
    • API key in cookie __Secure-better-auth.session_token

Path parameters

idstring required

Response

The request has succeeded.

step'awaiting_authorization' | 'authorized' | 'connecting_account' | 'serving_zone' | 'activating_routing' | 'installed' required

awaiting_authorization: waiting for the founder at Cloudflare's consent screen. authorized: they approved it, and a credential is held for minutes — call startInstall now. ⛔ Reported so an AGENT can see it: until 2026-10-06 the approval left this at awaiting_authorization, so an agent had to ask a person "did it work?" while the credential burned down, and on that day it expired exactly so. Still a label and never the credential. connecting_account: deploying the relay and giving it an address — touches no mail. serving_zone: pointing a domain's mail at the relay. ⚠️ The destructive half. activating_routing: the domain is served and Cloudflare is switching its mail on — usually 5–15 minutes; keep polling. Mail sent before it finishes may bounce 550 5.1.1, which is why the install does not say installed until Cloudflare says ready (P58). failed here names what Cloudflare last reported; installing again carries on waiting and redoes nothing. installed: done — Cloudflare accepts the domain's mail.

state'waiting' | 'running' | 'failed' | 'done' required
completedstring[] required

The steps that completed, in order — so a resumed install can show what it skipped.

errorstring

Why it stopped, when it stopped.

Changes

No recorded changes to this operation across all 1 revision of this API.