Connector Development Kit (CDK) - Enhancements to DDLs and Enums (Version 1.14.0)

What’s New in CDK v1.14.0?

We're thrilled to introduce new, dynamic features to the Connector Development Kit (CDK), making your development experience more intuitive and powerful.

  • DDLs with Authentications: Dynamic Drop Down Lists (DDLs) are now more versatile. Seamlessly integrate lists from external APIs, ensuring that your dropdowns are always up-to-date and relevant. To work with authenticated endpoints, you can now pass along tokens effortlessly for secure and seamless operations.
  • Enumerations with Custom Labels: Enhance the readability and user-friendliness of your enums. Customise display names in dropdowns with simple annotations, making your connector cleaner and more intuitive.

📚 Documentation for all new features is available in our public [npm repo](npm repo) and will soon be featured in our Developer Portal.

Detailed Feature Insights:DDLs (Dynamic Drop Down Lists)DDLs bridge the gap between your connector and external data sources. Imagine needing to display user names in a dropdown, sourced directly from another API. With DDLs, you can create a dynamic list where selections are linked to specific IDs or other data elements.

  • Enhanced with Authentication

    • Securely connect to authenticated endpoints by passing tokens directly within your operation.
  • Simplified Syntax

    • Utilise the **@lookupOperation **and **@lookupInput **annotations to define your DDL operations and inputs with ease.

Example Syntax:

typescriptCopy codeexport type ExampleOperationInput = \{ workspaceId: string; // ... userId: string; // Defined with @lookupOperation and @lookupInput\};

``

Enumerations (Static Drop Down Lists)Enums are now more customisable. By default, they generate user-friendly display names. You can now customise these names to suit your connector’s tone and style with our new annotation feature.

  • Custom Labeling

    • Use @enumLabels to provide distinct, custom labels for your enums, enhancing the user experience.

Example Syntax:

typescriptCopy codeexport type ExampleOperationInput = \{ type: ActionType; // Enum with custom labels\};

Was this page helpful?