Skip to content

feat(import): add clickup import - #332

Closed
Chew wants to merge 4 commits into
linear:masterfrom
Chew:feat/clickup-importer
Closed

feat(import): add clickup import#332
Chew wants to merge 4 commits into
linear:masterfrom
Chew:feat/clickup-importer

Conversation

@Chew

@Chew Chew commented Jun 15, 2023

Copy link
Copy Markdown

Supersedes and closes #220

Took over working on the ClickUp importer.

I'm not done, but need to address a few things. One is the parent task, seemingly being worked on in #190, but I don't want to be blocked by that since all I need to add is the parentId field, is this something that's even possible to handle?

Otherwise, tested, and everything is good to go. Subtasks are on the same level as parent tasks, which is annoying, but there's an option to ignore them.

Please feel free to provide feedback :)

@changeset-bot

changeset-bot Bot commented Jun 15, 2023

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: ba3b609

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@linear/import Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@breart

breart commented Aug 31, 2023

Copy link
Copy Markdown

Tested this in real project. Generally speaking — their exporting sucks. They only export break lines, and even that they managed to export as string \n rather than a real newline character.

Sharing my findings:

  1. Line breaking doesn't work properly
  2. Prevent null in the task description, when there is none
  3. We have a lot in one Space, I'd also add a filter for "Folder name" and "List name"
  4. There is a possibility in UI to export a separate list view, but it has different format of values and column names

Looks like they intentionally made it a pain point for people who want to migrate outside of their platform.

@Chew

Chew commented Sep 1, 2023

Copy link
Copy Markdown
Author

Thanks for reviewing this!

I noticed the \n issue too, but I did not catch the null task description, thanks for pointing that out.

I'll figure out if I can also do folder, but only if a space is specified, I don't know if I'm able to have dynamic options, but we'll see. The complicated way I did it was import the CSV into a Excel file, filter to the space I want, then replaced the "Space" with the Folder/list I wanted, then used that as the CSV.

I can add a different type of importing too, ClickUp (CSV) is what I currently have, if there's a different export I'll try that as well and support it separately.

@jacobeturpin

Copy link
Copy Markdown

I'm going to consider this PR abandoned and review how close it was to getting over the finish line. My org is looking to complete a ClickUp -> Linear migration, and moving our tickets into Linear is the biggest hurdle. I might be able to refactor into a workable state in the process of importing my own org's data.

@tommoor

tommoor commented Aug 22, 2024

Copy link
Copy Markdown
Member

We recommend using the CSV importer for ClickUp at this time:
https://linear.app/docs/import-issues#trello-pivotal-tracker-or-clickup

@peteruithoven

Copy link
Copy Markdown

Note both #220 and #332 only pull info from a csv export from clickup, which means you won't get task comments.
Same goes when you use the CSV importer btw.

I'm quite certain that to import task comments you'll need to connect to the Clickup API.

To capture custom fields I can recommend converting those to label groups. For example a "Specialization" field (with Front-end or Back-end etc), could be converted into an additional tag like Specialization/Front-end. Keep in mind that label groups are exclusive, so for example you can't store multiple Specializations. And the labels can't contain /'s.

@Chew

Chew commented Jul 5, 2025

Copy link
Copy Markdown
Author

I'm going to go ahead and close this since I am unfortunately mostly done with both platforms (though I hope to return to linear!) Feel free to improve on this or rewrite your own. I do agree with Peter that the API should be used instead of an export, but a CSV is ultimately easier. Hopefully we will have native import one day!

@Chew Chew closed this Jul 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants