Whether a service's site can be shown in the dashboard's preview frame: it answers, and doesn't forbid framing (X-Frame-Options, CSP frame-ancestors). Only the service's own first domain is asked, and never a private address.
API key access: read.
apiKeyAuthorizationBearer <pyo_…>An API key from the dashboard's API keys page: Authorization: Bearer pyo_…. Keys can expire, and an expired one gets a 401.
id*stringThe service's id (svc_…).
Whether it can be framed.
application/jsonWhether a site can be shown in a frame.
frameable*booleanreason?|Why not: "private" (no public domain), "unreachable", "refused" (it forbids framing) or "error" (it answered with a server error).
curl -X GET 'https://your-pyo.example.com/api/v1/services/string/preview'{
"frameable": true,
"reason": "string"
}