Skills Development Lucidchart Diagram and Document Management

Lucidchart Diagram and Document Management

v20260423
lucidchart-core-workflow-a
This skill provides a comprehensive workflow for managing Lucidchart documents and diagrams using the REST API. Users can programmatically execute the full lifecycle: creating new documents, adding complex shapes and connectors via the Standard Import format, modifying existing content, and exporting the final diagram into high-resolution formats like PNG, PDF, or SVG. Ideal for automated diagram generation and content lifecycle management.
Get Skill
302 downloads
Overview

Lucidchart — Document & Diagram Management

Overview

Primary workflow for Lucidchart document and diagram management. Covers the complete
lifecycle: creating documents, adding shapes and connectors via Standard Import,
editing diagram content programmatically, and exporting to PNG, PDF, or SVG. Uses the
Lucid REST API v1 with OAuth 2.0 authorization. The Standard Import format (.lucid)
supports pages, shapes, lines, groups, and styling in a single declarative payload.

Instructions

Step 1: Create a Document

const doc = await client.documents.create({
  title: 'API Architecture Diagram',
  product: 'lucidchart',  // or 'lucidspark'
});
console.log(`Document: ${doc.documentId}`);
console.log(`Edit URL: ${doc.editUrl}`);

Step 2: Add Shapes and Connectors via Standard Import

const importData = {
  pages: [{
    id: 'page1',
    title: 'Main',
    shapes: [
      { id: 's1', type: 'rectangle', boundingBox: { x: 100, y: 100, w: 200, h: 80 },
        text: 'API Gateway', style: { fill: '#4A90D9' } },
      { id: 's2', type: 'rectangle', boundingBox: { x: 100, y: 300, w: 200, h: 80 },
        text: 'Database', style: { fill: '#7B68EE' } },
      { id: 's3', type: 'rectangle', boundingBox: { x: 400, y: 200, w: 200, h: 80 },
        text: 'Auth Service', style: { fill: '#50C878' } },
    ],
    lines: [
      { id: 'l1', endpoint1: { shapeId: 's1' }, endpoint2: { shapeId: 's2' },
        stroke: { color: '#333', width: 2 } },
      { id: 'l2', endpoint1: { shapeId: 's1' }, endpoint2: { shapeId: 's3' },
        stroke: { color: '#333', width: 2, pattern: 'dashed' } },
    ],
  }],
};
await client.documents.import(doc.documentId, importData);

Step 3: Edit Existing Content

const pages = await client.documents.getPages(doc.documentId);
const pageId = pages[0].id;
// Update a shape's text and style
await client.pages.updateShape(doc.documentId, pageId, 's1', {
  text: 'API Gateway v2',
  style: { fill: '#2E86C1', fontSize: 14 },
});

Step 4: Export Document

const png = await client.documents.export(doc.documentId, {
  format: 'png',   // also: 'pdf', 'svg', 'csv' (for data shapes)
  pageIndex: 0,
  scale: 2,        // retina-quality
  crop: true,       // trim whitespace
});
fs.writeFileSync('diagram.png', png);
console.log('Exported diagram.png');

Error Handling

IssueCauseFix
401 UnauthorizedExpired OAuth tokenRefresh token or re-authorize
403 ForbiddenNo edit access to documentCheck sharing permissions
404 Not FoundInvalid documentId or pageIdVerify ID from create response
413 Payload Too LargeImport data exceeds 10 MBSplit into multiple pages
429 Rate LimitedExceeds 100 req/minImplement exponential backoff

Output

A successful run produces a Lucidchart document with shapes, connectors, and styling,
then exports a high-resolution PNG. Console output shows the document ID and edit URL.

Resources

Next Steps

Continue with lucidchart-core-workflow-b for template management and collaboration.

Info
Category Development
Name lucidchart-core-workflow-a
Version v20260423
Size 3.68KB
Updated At 2026-04-28
Language