# imports 6 routes, from the API’s own OpenAPI document. URL: https://docs.qaldy.com/reference/api/imports/ 6 routes. Every path starts at `https://cloud-api.qaldy.com`. Sign-in, tokens, errors and limits are on the [overview](https://docs.qaldy.com/reference/api/). ## Routes | Method | Path | What it does | |---|---|---| | [[GET]] | [`/​v1/​imports/​{id}`](#get-v1-imports-id) | One import with its report, what the workspace already has for it, and what blocks it | | [[POST]] | [`/​v1/​imports/​{id}/​discard`](#post-v1-imports-id-discard) | Discard an import that was never enabled: its draft app and paused road are removed | | [[POST]] | [`/​v1/​imports/​{id}/​enable`](#post-v1-imports-id-enable) | Enable an import: choose its connections, skip what could not be translated, and turn the automation on | | [[GET]] | [`/​v1/​workspaces/​{ws}/​imports`](#get-v1-workspaces-ws-imports) | Your imports (an admin sees every import in the workspace), newest first | | [[POST]] | [`/​v1/​workspaces/​{ws}/​imports`](#post-v1-workspaces-ws-imports) | Import a workflow: creates a disabled automation on a draft app, to be reviewed and enabled by its owner | | [[POST]] | [`/​v1/​workspaces/​{ws}/​imports/​analyze`](#post-v1-workspaces-ws-imports-analyze) | Read an exported n8n, Zapier or Make workflow and report what maps, what needs a connection and what does not import. Keeps nothing. | ## Reference ### [[GET]] `/v1/imports/{id}` One import with its report, what the workspace already has for it, and what blocks it. - **Authentication:** the console’s session cookie. - **Token:** not available. This route is for a signed-in person in the console (`403 console_only` for a token). - **Who:** its maker or an admin, else 404 | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `id` | path | string | yes | 1 to 128 characters | **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `id` | string | yes | | | `name` | string | yes | | | `format` | "n8n" · "zapier" · "make" | yes | | | `status` | "review" · "enabled" · "discarded" | yes | | | `appId` | string or null | yes | | | `automationId` | string or null | yes | | | `totals` | object | yes | | | `totals.steps` | integer | yes | at least 0 | | `totals.exact` | integer | yes | at least 0 | | `totals.partial` | integer | yes | at least 0 | | `totals.unsupported` | integer | yes | at least 0 | | `totals.ignored` | integer | yes | at least 0 | | `totals.needsConnection` | integer | yes | at least 0 | | `createdAt` | string (date-time) | yes | | | `report` | object | yes | | | `report.v` | 1 | yes | | | `report.format` | "n8n" · "zapier" · "make" | yes | | | `report.name` | string | yes | up to 120 characters | | `report.trigger` | object | yes | | | `report.starts` | string | yes | up to 200 characters | | `report.items` | object[] | yes | up to 260 items | | `report.totals` | object | yes | | | `report.connections` | object[] | yes | up to 12 items | | `report.connectors` | object[] | yes | up to 6 items | | `report.secrets` | object[] | yes | up to 40 items | | `report.warnings` | string[] | yes | up to 10 items | | `report.canCreate` | boolean | yes | | | `report.facts` | object[] | yes | up to 40 items | | `report.sentences` | string[] | yes | up to 40 items | | `context` | object | yes | | …and 9 more fields. The full schema is in [openapi.json](https://docs.qaldy.com/openapi.json). Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)). ### [[POST]] `/v1/imports/{id}/discard` Discard an import that was never enabled: its draft app and paused road are removed. - **Authentication:** the console’s session cookie. - **Token:** not available. This route is for a signed-in person in the console (`403 console_only` for a token). - **Who:** `can_edit` on its app; console only | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `id` | path | string | yes | 1 to 128 characters | **Request body** (`application/json`) An empty object: `{}`. **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `id` | string | yes | | | `name` | string | yes | | | `format` | "n8n" · "zapier" · "make" | yes | | | `status` | "review" · "enabled" · "discarded" | yes | | | `appId` | string or null | yes | | | `automationId` | string or null | yes | | | `totals` | object | yes | | | `totals.steps` | integer | yes | at least 0 | | `totals.exact` | integer | yes | at least 0 | | `totals.partial` | integer | yes | at least 0 | | `totals.unsupported` | integer | yes | at least 0 | | `totals.ignored` | integer | yes | at least 0 | | `totals.needsConnection` | integer | yes | at least 0 | | `createdAt` | string (date-time) | yes | | | `report` | object | yes | | | `report.v` | 1 | yes | | | `report.format` | "n8n" · "zapier" · "make" | yes | | | `report.name` | string | yes | up to 120 characters | | `report.trigger` | object | yes | | | `report.starts` | string | yes | up to 200 characters | | `report.items` | object[] | yes | up to 260 items | | `report.totals` | object | yes | | | `report.connections` | object[] | yes | up to 12 items | | `report.connectors` | object[] | yes | up to 6 items | | `report.secrets` | object[] | yes | up to 40 items | | `report.warnings` | string[] | yes | up to 10 items | | `report.canCreate` | boolean | yes | | | `report.facts` | object[] | yes | up to 40 items | | `report.sentences` | string[] | yes | up to 40 items | | `context` | object | yes | | …and 9 more fields. The full schema is in [openapi.json](https://docs.qaldy.com/openapi.json). Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)). ### [[POST]] `/v1/imports/{id}/enable` Enable an import: choose its connections, skip what could not be translated, and turn the automation on. - **Authentication:** the console’s session cookie. - **Token:** not available. This route is for a signed-in person in the console (`403 console_only` for a token). - **Who:** `can_edit` on its app; an admin when it spends a connector (`403 admin_approval_required`); console only | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `id` | path | string | yes | 1 to 128 characters | **Request body** (`application/json`) | Field | Type | Required | Notes | |---|---|---|---| | `bindings` | map of string | | default [object Object] | | `skip` | string[] | | up to 40 items. default | **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `id` | string | yes | | | `name` | string | yes | | | `format` | "n8n" · "zapier" · "make" | yes | | | `status` | "review" · "enabled" · "discarded" | yes | | | `appId` | string or null | yes | | | `automationId` | string or null | yes | | | `totals` | object | yes | | | `totals.steps` | integer | yes | at least 0 | | `totals.exact` | integer | yes | at least 0 | | `totals.partial` | integer | yes | at least 0 | | `totals.unsupported` | integer | yes | at least 0 | | `totals.ignored` | integer | yes | at least 0 | | `totals.needsConnection` | integer | yes | at least 0 | | `createdAt` | string (date-time) | yes | | | `report` | object | yes | | | `report.v` | 1 | yes | | | `report.format` | "n8n" · "zapier" · "make" | yes | | | `report.name` | string | yes | up to 120 characters | | `report.trigger` | object | yes | | | `report.starts` | string | yes | up to 200 characters | | `report.items` | object[] | yes | up to 260 items | | `report.totals` | object | yes | | | `report.connections` | object[] | yes | up to 12 items | | `report.connectors` | object[] | yes | up to 6 items | | `report.secrets` | object[] | yes | up to 40 items | | `report.warnings` | string[] | yes | up to 10 items | | `report.canCreate` | boolean | yes | | | `report.facts` | object[] | yes | up to 40 items | | `report.sentences` | string[] | yes | up to 40 items | | `context` | object | yes | | …and 9 more fields. The full schema is in [openapi.json](https://docs.qaldy.com/openapi.json). Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)). ### [[GET]] `/v1/workspaces/{ws}/imports` Your imports (an admin sees every import in the workspace), newest first. - **Authentication:** the console’s session cookie. - **Token:** not available. This route is for a signed-in person in the console (`403 console_only` for a token). - **Who:** member (your own; an admin sees all) | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `ws` | path | string | yes | 1 to 128 characters | **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `items` | object[] | yes | | | `items[].id` | string | yes | | | `items[].name` | string | yes | | | `items[].format` | "n8n" · "zapier" · "make" | yes | | | `items[].status` | "review" · "enabled" · "discarded" | yes | | | `items[].appId` | string or null | yes | | | `items[].automationId` | string or null | yes | | | `items[].totals` | object | yes | | | `items[].createdAt` | string (date-time) | yes | | Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)). ### [[POST]] `/v1/workspaces/{ws}/imports` Import a workflow: creates a disabled automation on a draft app, to be reviewed and enabled by its owner. - **Authentication:** the console’s session cookie. - **Token:** a personal access token or an MCP sign-in with the `write` scope. - **Who:** member; tokens (write) | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `ws` | path | string | yes | 1 to 128 characters | **Request body** (`application/json`) | Field | Type | Required | Notes | |---|---|---|---| | `source` | string | yes | 1 to 400000 characters | | `name` | string | | 2 to 60 characters | **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `id` | string | yes | | | `name` | string | yes | | | `format` | "n8n" · "zapier" · "make" | yes | | | `status` | "review" · "enabled" · "discarded" | yes | | | `appId` | string or null | yes | | | `automationId` | string or null | yes | | | `totals` | object | yes | | | `totals.steps` | integer | yes | at least 0 | | `totals.exact` | integer | yes | at least 0 | | `totals.partial` | integer | yes | at least 0 | | `totals.unsupported` | integer | yes | at least 0 | | `totals.ignored` | integer | yes | at least 0 | | `totals.needsConnection` | integer | yes | at least 0 | | `createdAt` | string (date-time) | yes | | | `report` | object | yes | | | `report.v` | 1 | yes | | | `report.format` | "n8n" · "zapier" · "make" | yes | | | `report.name` | string | yes | up to 120 characters | | `report.trigger` | object | yes | | | `report.starts` | string | yes | up to 200 characters | | `report.items` | object[] | yes | up to 260 items | | `report.totals` | object | yes | | | `report.connections` | object[] | yes | up to 12 items | | `report.connectors` | object[] | yes | up to 6 items | | `report.secrets` | object[] | yes | up to 40 items | | `report.warnings` | string[] | yes | up to 10 items | | `report.canCreate` | boolean | yes | | | `report.facts` | object[] | yes | up to 40 items | | `report.sentences` | string[] | yes | up to 40 items | | `context` | object | yes | | …and 9 more fields. The full schema is in [openapi.json](https://docs.qaldy.com/openapi.json). Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)). ### [[POST]] `/v1/workspaces/{ws}/imports/analyze` Read an exported n8n, Zapier or Make workflow and report what maps, what needs a connection and what does not import. Keeps nothing.. - **Authentication:** the console’s session cookie. - **Token:** a personal access token or an MCP sign-in with the `write` scope. - **Who:** member; tokens (write) | Parameter | In | Type | Required | Notes | |---|---|---|---|---| | `ws` | path | string | yes | 1 to 128 characters | **Request body** (`application/json`) | Field | Type | Required | Notes | |---|---|---|---| | `source` | string | yes | 1 to 400000 characters | **Response 200** | Field | Type | Required | Notes | |---|---|---|---| | `report` | object | yes | | | `report.v` | 1 | yes | | | `report.format` | "n8n" · "zapier" · "make" | yes | | | `report.name` | string | yes | up to 120 characters | | `report.trigger` | object | yes | | | `report.starts` | string | yes | up to 200 characters | | `report.items` | object[] | yes | up to 260 items | | `report.totals` | object | yes | | | `report.connections` | object[] | yes | up to 12 items | | `report.connectors` | object[] | yes | up to 6 items | | `report.secrets` | object[] | yes | up to 40 items | | `report.warnings` | string[] | yes | up to 10 items | | `report.canCreate` | boolean | yes | | | `report.facts` | object[] | yes | up to 40 items | | `report.sentences` | string[] | yes | up to 40 items | | `context` | object | yes | | | `context.connectors` | object[] | yes | | | `context.matches` | object[] | yes | | Errors: `400`, `401`, `403`, `404`, `409`, `429` (the error format is on the [overview](https://docs.qaldy.com/reference/api/#errors)).