Skip to main content

Requesting Feedback: JSON Import / Post Document Contents !


Hi friends! I am the Product Manager at Lucid on the API teams and I have exciting news. We've heard your multiple requests for a REST API to create a document based on a JSON... and we're currently building it! We expect to release it by the end of 2023 (but I'm adding the standard caveat of "unexpected things happen so it may be later than end of year").


In the meantime we are trying something new: we are posting the current design of the endpoint in this forum to collect feedback. Our goal is to both 1) improve our initial release and 2) figure out what we should prioritize next.


Here is the design. Please leave feedback and/or questions in this thread. Thanks for building with us!


 

Hey Ian


So sad to see this thread so empty. 😃 Thank you so much for sharing the preliminary design.


I'm very excited about this feature. For context I've been woefully trying to work with CSV import/export all evening to rig up automation to create LucidChart process diagrams. The CSV importer is not a great experience given it's languished and ill-documented capabilities.


Some questions:


1/ Will "Notes" on shapes be supported? I would love to be able to express nuance for a shape that the user can click through to without being redirected to a different page/diagram.


2/ What shape libraries do you plan to support? The design doc mentions four categories of shapes (Org charts ERD blocks UMLs Custom shapes) that won't be supported. Is it safe to assume that all other standard shape libraries will be supported? The ones I've been trying to use tonight: Standard Flowchart Containers [Geometric] Shapes Sticky Notes and Mind Map. I could see others being useful for me at some point in the future e.g. shapes for network/systems architecture diagrams. I also see a note in ShapeTypeEnum that you plan to offer a limited set for MVP. The stringent (and undocumented) limitations of the CSV importer have been the roughest to understand and cope with.


3/ How will container shapes be supported? For example swimlanes in the CSV importer can contain other shapes. (I found swimlanes cannot contain other swimlanes however.) Which containers will be supported? I didn't see anything in the JSON specs except for the mention of the "magnetized" property. I imagine you're planning on something like nesting the JSON objects within a collection like "sub-shapes" or leaving the `shapes` collection flat and referencing a `parent` somehow?


4/ Will you support adding dynamic field placeholders in the text of shapes? For example if I have custom data collections on my shapes such as "process owner" can I embed the value of that dynamically when I'm creating an instance of a shape that has that field?


5/ Any update on timeline? Like I said I'm looking forward to this feature. 🙂 Thanks again for all your hard work in getting to this point. 


Cheers


Taylor (Salesforce)


 Hi Taylor


Thanks for the in-depth response and questions about the JSON import. Happy that you're so excited about the feature.


In answer to your questions:


1/ Will "Notes" on shapes be supported? Not currently but this is just the MVP of the endpoint and we're always looking for feedback on what to add next. So thanks for pointing out your interest!


2/ What shape libraries do you plan to support? We'll be supporting the standard shape libraries that are loaded with Lucidchart and Lucidspark. This means we'll be supporting Standard (with the exception of "Diagram Key" and "Presentation Frame") Flowchart [Geometric] Shapes Chart Containers (including Swimlanes) Sticky Notes Spark Shapes Spark Containers and Freehand Drawing. All lines are included in the Standard library. Unfortunately as of right now we don't support Tables (both static and dynamic) Mindmap Lucid Cards etc. However could you help us understand what shapes you would most like added to the import and why?


3/ How will container shapes be supported? Containers will be supported by calculating which shapes are within the container's bounding box. Then if the "magnetized" property is set to "true' the shapes will move with the container. This way we don't have to keep track of a list of sub-shapes or a parent shape. Because of this you actually should be able to nest swimlanes with the JSON import.


4/ Will you support adding dynamic field placeholders in the text of shapes? Yes we are allowing users to upload linked or custom data via a CSV file within the import zip file that can be dynamically referenced on shapes.


5/ Any update on timeline? The earliest the endpoint could be live is end of next week (November 17th). We hope to release the endpoint by end of 2023 at the latest. Please note when we release of this endpoint could change based on internal priorities and needs. (e.g. we have to add the "stuff happens and this may release later than expected" caveat regarding timing when we post in a public forum 😃 )


I hope this answers your questions let us know if you have any more.


Best


Jake


IdeaSeeking Feedback

Hi @Jonathan R

We recently migrated the community to https://community.lucid.co/, and it seems you had previously posted in our legacy community with a follow up question to the post above regarding JSON export via API. 


This is not currently a supported feature, but if this is a feature you would be interested in for the future, please let us know! 


Hello @Ian Baenziger 

 

I’m currently looking at ways to automate the creation of diagrams to share with my external customers and came across this API extension proposal. Looking at your current API documentation at https://developer.lucid.co/rest-api/v1/#import-document it doesn’t seem to support posting of a zip file as specified in the proposal. 

Wondering if this proposal has been implemented and deployed yet or if it’s still in the works ? Would love to see that being available as it enables many automation use cases. 

 

Best,

Sebastien. 


Standard Import is good, but how to sync changes continuously as they happen in the source system? Let’s say you are pulling in strategic goals of a company, and want to sketch out projects for the goals, if the goal is changed, how can you ensure that it is updated in all programatically created Documents?


Thanks in advance community!


Looking at your current API documentation at https://developer.lucid.co/rest-api/v1/#import-document it doesn’t seem to support posting of a zip file as specified in the proposal. 

Hi @Sebastien , this is Richard from our Technical Support team.

You are correct that our Import Document endpoint does not explicitly mention support for ZIP files. However, I would like to clarify that the Lucid import files, which use a .lucid extension, are essentially ZIP files containing a document.json file. This means you can use ZIP files for importing, provided they adhere to the required format. Check out our Lucid Standard Import documentation and our Lucid Standard Import (a.k.a. JSON Import) API FAQ for more information!


Standard Import is good, but how to sync changes continuously as they happen in the source system? Let’s say you are pulling in strategic goals of a company, and want to sketch out projects for the goals, if the goal is changed, how can you ensure that it is updated in all programatically created Documents?


Thanks in advance community!

Thank you @nikolai for this input!

For future viewers of this thread, this topic was addressed in the Lucid for Developers Community here.


Are there any plans to allow the standard import to reference custom shape libraries? 

I’ve just created a custom shape library. I’d now like to be able to create a lucid diagram via import for our customers that makes use of these custom shapes and configure those shapes using the properties I’ve exposed.

Think of it like a multipage diagram with floorplans and objects overlaid on top at certain locations.

Would be very powerful if this were supported.

Thanks!

 


@Alex B Thank you for your question and for contributing to the Lucid for Developers Community. That’s a neat use case! Someone from our team will get back to you on this shortly.


@Alex B Your idea sounds super powerful and we understand the importance of customization and the value it brings to our users. While direct support for custom shape libraries in the standard import is not on our immediate roadmap, we encourage exploring the Lucid Extension API as an alternative approach. The Extension API offers flexibility in integrating custom shapes and functionalities into your Lucidchart diagrams. By building a custom extension, you could programmatically insert shapes from your custom shape library into diagrams, thus achieving a similar outcome to what you've described.

If you're interested in this approach, please see this post for resources to help with getting started building a Lucid extension.


Just read the

and found out z-order is not an option at this time.   I am here to make the feature request.     

Our company is investigating auto creating network diagrams with lucid since we already use lucidcharts in a manually and documents are quickly out of date.  However the inability to have the lines be under the shapes renders the output almost unusable.    I place the lines in x_pos, y_pos of 0.5 and 0.5 to connect ot the shape and it is always over the shape.   So i have to go into each of the 100+ shapes to move it to the “front”.    

I would ask for z-order to be an option.  My use case really is just to move ALL the lines “under” the shapes.