Connectors
DocsGitHub5

Create your own connector

Follow these steps to create your own connector:

1. Clone the repository

Clone the connector factory repository to your local machine:

git clone https://github.com/514-labs/factory.git
cd factory

2. Generate a connector scaffold

From the connector factory directory, run the install script to generate a new connector with the appropriate structure:

bash -i <(curl https://connectors.514.ai/install.sh) [connector-name] [version] [author] [language]

Example:

bash -i <(curl https://connectors.514.ai/install.sh) ads-b-dot-lol v2 fiveonefour typescript

This creates a new directory with your connector scaffold in the chosen language.

3. Determine your connector type

Identify which type of connector you're building:

  • API Connector: For general REST/GraphQL APIs
  • SaaS Connector: For third-party SaaS platforms and services
  • Database Connector: For SQL databases (PostgreSQL, MySQL, etc.)
  • Blob Storage Connector: For cloud storage (S3, GCS, Azure Blob)

4. Follow the specifications

Feed your LLM the relevant specifications and documentation:

  1. Target API documentation: Share the official API docs of the service you're connecting to (e.g., Stripe API docs, Shopify API docs)
  2. Type-specific specs: Include the appropriate specification:
  3. Example connectors: Reference existing connectors in the registry for patterns
    • API Connectors: ADS-B.lol, OpenWeather
    • SaaS Connectors: Google Analytics, Shopify
    • [coming soon] Database Connectors: PostgreSQL
    • [coming soon] Blob Storage Connectors: S3

Your LLM can then help generate the connector implementation following the established patterns and specifications.

5. Share your connector

Open a pull request to the factory repository to share your connector with the community. Mention the connector Issue in the PR description.

If you built your connector outside the connector-factory monorepo, you'll need to add it to the monorepo's registry directory with all required metadata (defined in connector-registry/_scaffold).