Export and import
Export links and clicks to CSV, migrate from Linkly/Bitly, and re-import an “Export” file — in project settings.
Where to find
Project “Settings” tab → separate “Export” and “Import” items in the left menu. Both work on the current project.
- Open the project in the workspace.
- Go to the “Settings” tab.
- Choose “Export” to download or “Import” to upload CSV.
Project settings: “Export” and “Import” in the side menu.
Plan and limits
Export and import are available on plans with a daily transfer limit. On FREE and FREE+ the sections show a stub suggesting an upgrade.
- The daily limit sums the volume of all uploads and downloads for the day, not the number of attempts.
- One project can run only one export and one import at a time.
- A finished export file is kept briefly (usually up to 24 hours) — download it right after completion.
- CSV uploaded directly in the browser has a size limit. Very large files cannot be uploaded this way.
WARNING: exceeding the daily limit makes a new export or import fail. Wait until the next day or change plan.
Export links
The “Links” section builds a table of project short links: names, destinations, subdomains, tags, statuses and total clicks.
- “Settings” → “Export” → “Links” section.
- Set filters: folder, tags (any or all), include archived links.
- Click “Next” → tick the columns you need (a core set is selected by default).
- Choose CSV or TSV and, if needed, GZIP compression.
- Start export → wait for completion → click “Download”.
| Column | What it means |
|---|---|
| `short_name` | Short name (id) — required for import |
| `long_url` | Primary destination URL |
| `long_url_2`, `long_url_3`… | Extra redirect destinations when there are several |
| `subdomain` | Project subdomain (empty — none) |
| `description` | Link description or title |
| `tags` | Tags separated by commas |
| `is_active`, `is_archived` | Status: active or archived |
| `agg_total_clicks` | Total clicks from analytics |
| `has_password` | “Password-protected” flag (the password itself is not exported) |
An “Export” file can be imported back into the same or another project — columns match the “Our CSV” format.
Choosing columns for link export.
Export progress and download button.
Export clicks and full backup
“Clicks” exports redirect history for a chosen period. “Full backup” is a ZIP with links and clicks in one file.
- “Clicks”: pick a period (24 hours, 7 days, 30 days or custom). Optionally include bot hits.
- Tick columns: time, country, device, UTM fields, referrer and others.
- “Full backup”: set the same link filters plus click period — one ZIP for archive or migration.
- Detailed click stats export only within the retention available on your plan. Beyond that you get totals only.
- In click export you can exclude bots from totals but still mark them in rows.
- Full backup is useful before major project changes.
Click export: period and columns.
Import: pick a format
In “Import” pick the file source. The system shows expected columns and can auto-detect the format.
| Format | When to choose |
|---|---|
| Our CSV | A KKOROCHE “Export” file or your template with short_name, long_url… |
| Linkly | CSV or export from Linkly: slug, url, name, domain, password… |
| Bitly | CSV from Bitly (Destination URL, Custom Link) or API export (long_url, custom_bitlink, title) |
| Linkly (clicks) | Daily click summary — only updates stats for existing links; does not create new ones |
| Auto-detect | The system detects the format (ours, Linkly or Bitly) from the first-row headers |
- Choose a suitable format.
- Drop a CSV (or .csv.gz) into the upload area or click “Choose file”.
- After upload open “Field mapping” — check that your columns map to KKOROCHE fields.
- Configure import options, run validation, then import.
Available import formats and the file drop zone.
Import: field mapping
“Field mapping” shows the first rows of your file. “Short name” and “Long URL” are required.
- Left — KKOROCHE fields, right — your CSV columns. Drag a file column onto a field or pick from the list.
- For Linkly usually: slug → short name, url → long URL, name → description, domain → subdomain.
- For Bitly usually: custom_bitlink or Custom Link → short name, long_url or Destination URL → long URL, title → description.
- If a link has several redirect destinations, add long_url_2, long_url_3, and so on.
- With “Auto-detect”, after upload the system shows which format it recognised (ours, Linkly or Bitly).
- Empty mappings do not wipe defaults for the chosen format — change only what you need.
- Mapping errors are highlighted in the same window.
- Column targets_json is for advanced JSON target import. Normally use long_url and long_url_N.
Mapping CSV columns to KKOROCHE fields with a data preview.
Import: settings and pre-check
Before running you can enable folder creation, subdomain binding, skip deleted rows, and a dry run without saving.
| Setting | What it does |
|---|---|
| Create folders | If the file has folder structure, create missing folders in the project |
| Map subdomain | Bind links to project subdomains by name from the file |
| Skip deleted | Do not import rows marked deleted in the source file |
| On error | “Continue” — do not stop for row errors; “Stop” — abort on the first error |
| Check (pre-estimate) | Pre-estimate: whether plan limits suffice, required subdomains exist, and total volume |
| Dry run | Test import without saving — just see what would happen |
- After field mapping open “Import settings”.
- If needed, create missing subdomains from the list shown after the check.
- Run “Check” → fix warnings → click “Import”.
WARNING: the pre-check does not scan the file for duplicates. If the project already has the same short names, those rows are skipped, not replaced.
Import settings and the check button.
Result and errors
After import or export finishes, a summary shows created, updated, skipped and errors. A short status also appears at the top of the section.
- If a short name already exists in the project, the row is skipped as a duplicate. The report includes a matching warning.
- If the whole file is duplicates, you see “Nothing created” with a clear explanation.
- For row errors you can download an error log (errors.ndjson.gz) with per-row problem and cause.
- Export: on success — “Download”. Import: summary without a file (except the error log if any).
Import result: created, skipped and warnings.
Full loop: export → import
CSV from link “Export” is the recommended way to back up and move links between projects in one account.
- Export “Links” with default columns (short_name, long_url, subdomain, description, tags…).
- In another project open “Import” → choose “Our CSV” or “Auto-detect” → upload the file.
- Field mapping fills in automatically. Enable “Create folders” and “Map subdomain” if needed.
- Run the check, then import. Existing short names are skipped — to refresh data, edit links manually or delete old ones before import.
Passwords are not transferred from export (only a “has password” flag). Set a new password in link settings if needed.