Skip to content

Extend Overview

Extend is the governed custom connector area for SchemAlign. It is used when the built-in nodes do not cover a required integration pattern and a controlled custom node is needed.

An Extend connector is authored as versioned Python source, validated by SchemAlign, published as an immutable release, installed to an organization, and then used from Workspace as an installed connector node.

What Extend is for

Use Extend to create controlled connectors for specialized systems, protocols, or file formats while keeping execution inside SchemAlign guardrails. Common examples include:

  • source connectors that read from APIs, directories, SFTP locations, or generated files
  • compose connectors that perform governed custom preparation work
  • destination connectors that deliver a prepared stream or file to a supported external target

Current Workspace behavior

Extend supports connector metadata for source, compose, and destination types. The current Workspace integration path documented here focuses on installed source connectors, because that is the production path used for custom connector execution in pipelines today.

Production lifecycle

Stage What happens
Draft A connector is created with a connector key, type, version tag, entrypoint, Python version, dependencies, configuration schema, test metadata, and source files.
Validate SchemAlign checks manifest shape, connector key safety, dependency declarations, governed Python runtime availability, source file paths, Python syntax, and entrypoint resolution.
Test A draft version can be run with safe test metadata before publication.
Publish A draft version is validated, hashed, and converted into an immutable published version.
Install A published version is installed to an organization. Requested capabilities become approval items.
Approve Requested capabilities must be approved before an installation becomes enabled.
Use Workspace shows installed connectors available to the pipeline organization. The connector runs through the governed connector runner.

Core objects

Object Description
Connector The durable custom connector record, identified by a stable connector key.
Connector version A draft, published, or archived version of the connector. Published versions are immutable.
Connector file A source file stored with the version. File paths must be relative and must not traverse upward.
Configuration schema JSON schema-like metadata that drives the Workspace UI for the installed connector.
Test metadata Safe sample input used for testing. It should not contain real secrets.
Dependency declaration The requested Python version and pinned Python package requirements.
Capability declaration The capabilities the connector asks an organization to approve before enabling the install.
Installed connector A published connector version installed to a specific organization.

How connector runs are isolated

Extend connector execution is intentionally separated from normal application execution. SchemAlign stages the connector source into a run directory, resolves a dedicated dependency environment, writes a runtime manifest and request payload, and dispatches the connector through the connector runner service.

Important guardrails include:

  • dedicated governed Python runtime resolution
  • dependency environments keyed by runtime and requirement hash
  • organization-scoped runtime directories and identities
  • read-only staged connector source
  • isolated output directory for connector-produced files
  • scrubbed environment variables
  • runtime timeout and resource limits
  • fail-closed behavior when the dedicated runtime is unavailable

For the detailed authoring rules, see Production Guardrails.

  1. Read Production Guardrails.
  2. Use Create Your First Extend App for the basic workflow.
  3. Share the AI Connector Contract with an AI coding assistant before asking it to generate connector code.
  4. Follow Build an Active Directory LDAP Browser for a complete source connector example.