Reference
View as MarkdownImports API
2 operations. Every call needs a session cookie or an Authorization: Bearer nct_… token unless marked Public. Conventions, errors and scopes
/imports/coolify/applyImport from Coolify
Creates the projects, environments, services and managed databases of a Coolify instance as staged changes: services, volumes, variables (secrets marked), domains and links. The request must match a plan without blockers; the plan is recomputed from Coolify, so the response never depends on a stale review. Database and volume data is not copied. With deploy: true the new services are deployed (needs deployments:write); otherwise review them and deploy from the staged bar.
| Parameter | In | Type | Description |
|---|---|---|---|
Idempotency-Key | header | string | Client-chosen key (<=255 chars). A retry with the same key replays the original response for 24 hours. |
Request body · application/json · required
- CoolifyChoicesrequired
- deployboolean
- serverIdstringrequired
- CoolifySourcerequired
Response 201 · Created · application/json
- deploymentsstring[] | nullrequired
- followupsstring[] | nullrequired
- CoolifyAppliedProject[] | nullrequired
- CoolifyPlanRewrite[] | nullrequired
- CoolifyAppliedService[] | nullrequired
- warningsstring[] | nullrequired
401Unauthorized403Forbidden409Conflict422Unprocessable Entity500Internal Server Error
Errors are RFC 9457 application/problem+json with a stable code field.
/imports/coolify/planReview an import from Coolify
Reads a Coolify v4 instance with the given API token (read and read:sensitive) and returns how every project, environment, application and database would be imported: the service source and settings, domains, variables by key (secrets flagged, values never returned), references rewritten to other imported resources, what is not supported, and the follow-up steps (data is never copied). choices change the defaults; send the same body again to see the effect. Nothing is written and the Coolify token is used for this request only. Needs projects:write and an unrestricted token, because the server connects to the given address with the credential.
Request body · application/json · required
- CoolifyChoicesrequired
- serverIdstring
- CoolifySourcerequired
Response 200 · OK · application/json
- blockersstring[] | nullrequired
- CoolifyCheck[] | nullrequired
- coolifyVersionstring
- followupsstring[] | nullrequired
- installablebooleanrequired
- CoolifyPlanProject[] | nullrequired
- CoolifyPlanRegistry[] | nullrequired
- CoolifyPlanRewrite[] | nullrequired
- CoolifyTotalsrequired
- CoolifyPlanUnsupported[] | nullrequired
- warningsstring[] | nullrequired
401Unauthorized403Forbidden422Unprocessable Entity500Internal Server Error
Errors are RFC 9457 application/problem+json with a stable code field.