Set up a new import or export endpoint, or update an existing one's connection details and pipeline steps, directly from the Kademi admin UI — no XML editing required for most cases.
Why this matters
Integration Services lets you connect Kademi to external systems by creating endpoints that receive incoming data or send outgoing data. Each endpoint is linked to a pipeline — a series of steps that process or generate the data.
Previously, setting up or changing an endpoint meant working directly with the pipeline's XML file. Now, most common scenarios — SFTP, FTP/S, HTTP/S, email, and upload-only — can be created and edited entirely through the UI, with the option to fall back to XML for anything more custom.
Where to manage your endpoints
Go to Data > Integration > Endpoints tab for the website you want to configure.

Before you start: you'll need a website with the KIntegration app installed selected in Website Manager. If no website is selected, you'll see a message that you cannot create imports/exports, along with a note that the integration app isn't enabled on any live websites. Kademi recommends using a dedicated website for integrations — separate from the ones your users access — to keep a high level of security.
Note: Creating or editing endpoints requires a draft (editable) version of the website. See Working with live vs. draft versions below.
Creating a new endpoint
You can create an endpoint two ways:
Option 1: Create Import / Create Export (UI wizard)
This is the recommended approach for most integrations, since it doesn't require writing any XML.
-
Click Create Import to set up an endpoint that receives data. Choose from:
- SFTP — for secure, scheduled batch file fetching (most common for enterprise use)
- FTP/S — older standard, generally not recommended
- Upload Only — files are uploaded manually through the admin, with no scheduled fetching
-
Click Create Export to set up an endpoint that sends data out. Choose from:
- Email — sends the export to one or more recipients
- HTTP/S — secure, widely supported format for sending files
- SFTP — secure, modern form of FTP for batch processing
- FTP/S — older standard, generally not recommended
After choosing a type, you'll be guided through a short wizard. The example below walks through creating weekly-active-deals-export, an SFTP export.
1. General — give the export job a name so you can identify it later.
- Export name:
weekly-active-deals-export

2. Query — choose the saved query or index query to export.
- Index query:
Active Deals Individual

3. Destination — configure where the exported data will be sent.
- Address:
sftp.example.com(domain and TLD only — don't include a protocol prefix likeftp://) - Path:
/exports/ - File Name:
active-deals-individual.csv - Username:
demo-integration-user - Login Type:
Password - Password: (enter your server's password)

4. Notifications — optionally send an email summarising the result of each run, useful for monitoring scheduled exports and catching failures.
- Enable notifications: checked
- Recipient email addresses:
integrations@yourcompany.com - Subject:
Weekly deals export result - From address: left blank (uses the website's no-reply address)
- Only send the email when the run recorded failures: unchecked

5. Schedule — optionally run the export automatically on a schedule. You can also add a schedule later, or run it manually.
- Add Schedule: checked
- Time unit:
WEEKS - Number:
1 - Start Date: the date and time of the first run — subsequent runs repeat at the same time, at the selected interval

6. Summary — review everything before creating the export. You can jump back to any step to make changes, then click Create.

Option 2: Create config / Edit config (XML)
If you need more control over the pipeline than the UI wizard supports, you can still create or edit the endpoint's configuration directly as XML via Create config (or Edit config, once a config already exists). For a full walkthrough of this method, see Introduction to Kademi Integration Services.
Editing an existing endpoint
Once an endpoint exists — whether created through the wizard above or already set up — click its edit icon in the Action column of the Endpoints list to open its dedicated settings page. Continuing the example from above, here's weekly-active-deals-export after it's been created.

The endpoint page shows its name, direction, type, and enabled/disabled toggle, with two tabs: Pipeline and Destination.

Destination tab
This tab holds the connection details for where the data is sent (or received, for an import endpoint). The fields shown here depend on the endpoint's type (e.g. SFTP, Email, Upload Only) — the example below shows an SFTP export:
- Address — the destination URL (for HTTP) or
ftp://host/pathstyle URI (for FTP/SFTP) - File name — the name of the transferred file; supports a KCode for dynamic file names
- Login Type — e.g. Password
- Username and Password — leave Password blank to keep the existing value
Address, username, password, and other fields can reference environment variables and secrets using ${my.variable} or ${secret.name} syntax, resolved when the pipeline runs.

Click Save once you've made your changes.
Pipeline tab
This tab shows the pipeline as a tree of steps, each with its own edit icon:
[Screenshot: Pipeline tab for weekly-active-deals-export showing the step tree: TransactionStep > QueryExportStep > CsvOutput]
Clicking a step's edit icon opens a form with fields specific to that step type. For example:
- TransactionStep — wraps processing in a database transaction. Options include Isolated (wrap each invocation separately, useful to avoid nested transaction errors) and Always rollback (useful for testing).
- QueryExportStep — exports the results of a saved query or index query. Set the Query name to choose which query to export.
- CsvOutput — writes the incoming rows as CSV. Fields include Separator, Quote character, Escape character, Column names (comma-separated list used as the header row), and Write header row.
Each step form has its own Save button.
Not every step type has a dedicated UI form yet. For any step without one, use Edit Pipeline XML file at the top of the Pipeline tab to edit the underlying XML directly.

Other actions on the endpoints list
From the dropdown next to each endpoint's edit icon, you can also:
- Upload — manually upload a file for the endpoint
- Delete — remove the endpoint

Running an endpoint and viewing results
Endpoints that support manual triggering show a Run button on the Endpoints list. Scheduled endpoints (see the Schedule step when creating an export) run automatically at their configured interval — both manual and scheduled runs show up the same way in the Integration history, described below.
Running manually
Click Run next to the endpoint, then confirm the action in the dialog that appears.

Viewing the result
Go to the Integration history tab to see recent runs — status, which pipeline ran, when it started, how long it took, which website it ran on, and the source/destination.

Click a pipeline entry to open its full Integration Result page. This shows the execution ID, start/finish times, source, destination, website, output file, any failures or warnings, and a step-by-step information log. From here you can also Re-process the run if needed.

Working with live vs. draft versions
Integration endpoints can only be created or edited from a draft (editable) version of the website.
- On the live version, the endpoint list shows a message — "Switch to an editable version to create integrations" — and the Create Import, Create Export, and Edit config buttons aren't available. A banner explains you can select a draft version from the versioning menu, or create a new draft version from the Manage website page.
- On a draft version, all the creation and editing buttons are available.
Once you're happy with your changes, publish the draft version from the Manage website page — only the live version of a website is used for integration processes, so changes won't take effect until then.
Wrapping up
Whether you're setting up a new SFTP export or fine-tuning the pipeline behind an existing one, most of the work can now be done directly in the Kademi admin — no XML required for common cases, with XML still available when you need it.
If you run into a scenario the UI wizard doesn't cover, or need help planning a more complex pipeline, reach out to the Kademi team.
