Connectors

Connectors allow you to instantiate connections to interface Krenalis with external data.

List all connectors

Returns the connectors, sorted by code.

Request

No parameters.

Response

  • connectors

    array of object
    • code

      string

      The connector's code. It contains only [a-z0-9-].

    • label

      string

      The connector's label.

    • type

      string

      The type of connector.

      Possible values: "Application", "Database", "File", "FileStorage", "MessageBroker", "SDK" or "Webhook".
    • categories

      array of string

      The categories of the connector. There is always at least one.

    • asSource

      nullable object

      The characteristics of the connector when it is used as a data source. This will be null if the connector cannot function as a data source.

      • asSource.targets

        array of string

        The targets supported by the connector when it is used as a source. It includes one or more of the following: "Event" and "User"

      • asSource.hasSettings

        boolean

        It indicates if the connector has settings when it is used as a source.

      • asSource.sampleQuery

        string

        The sample query displayed in the query editor when creating a new database source pipeline.

        It is empty if the connector is not a database connector.

      • asSource.summary

        string

        A brief description of the connector when it is used as a source.

    • asDestination

      nullable object

      The characteristics of the connector when it is used as a data destination. This will be null if the connector cannot function as a data destination.

      • asDestination.targets

        array of string

        The targets supported by the connector when it is used as a destination. It includes one or more of the following: "Event", and "User"

      • asDestination.hasSettings

        boolean

        It indicates if the connector has settings when it is used as a destination.

      • asDestination.sendingMode

        nullable string

        The mode used by application connectors to send the events to the application, if the application supports events. It is empty if the connector is not an application or it does not handle events.

        Possible values: "Client", "Server" or "ClientAndServer".
      • asDestination.summary

        string

        A brief description of the connector when it is used as a destination.

    • terms

      object

      Specific terms by which the connector refers to various entities, such as users and groups.

      • terms.user

        string

        The term used to indicate a single user. For example "Client", "Customer" or "User".

      • terms.users

        string

        The term used to indicate the users. For example "Clients", "Customers" or "Users".

      • terms.userID

        string

        The term used to indicate the user identifier. For example "ID", "User ID", or "Unique ID".

    • hasSheets

      boolean

      It indicates, for file connectors, if it supports sheets. It is false if the connector is not a file connector or does not support sheets.

    • fileExtension

      string

      The main extension of the file type that the connector reads and writes. It is used as a placeholder in the input field, where the user specifies the file name to read or write.

      It is empty if the connector is not a file connector.

    • requiresAuth

      boolean

      Indicates whether an authorization is required to create a connection for this connector. It is false if the connector is not an application or does not require authorization.

    • authConfigured

      boolean

      Indicates whether the required OAuth credentials (client ID and client secret) have been provided for this connector. It is true only if the connector requires authorization and the necessary environment variables are set.

    • strategies

      boolean

      Indicates whether the connector requires a strategy to be configured for user management.

      If true, the strategy is mandatory and must be provided when creating connections for this connector, otherwise, if false, the strategy is not allowed for such connections.

GET /v1/connectors
curl https://example.com/v1/connectors \
-H "Authorization: Bearer api_xxxxxxx"
Response
{
  "connectors": [
    {
      "code": "hubspot",
      "label": "HubSpot",
      "type": "Application",
      "categories": [
        "CRM"
      ],
      "asSource": {
        "targets": [
          "User"
        ],
        "hasSettings": true,
        "sampleQuery": "",
        "summary": "Import contacts as users and companies as groups from HubSpot"
      },
      "asDestination": {
        "targets": [
          "User"
        ],
        "hasSettings": true,
        "sendingMode": null,
        "summary": "Export users as contacts and groups as companies to HubSpot"
      },
      "terms": {
        "user": "Contact",
        "users": "Contacts",
        "userID": "HubSpot ID"
      },
      "hasSheets": false,
      "fileExtension": "",
      "requiresAuth": true,
      "authConfigured": true,
      "strategies": true
    }
  ]
}

Get connector

Get a connector.

Request

  • :code

    string Required

    The connector's code.

Response

  • code

    string

    The connector's code. It contains only [a-z0-9-].

  • label

    string

    The connector's label.

  • type

    string

    The type of connector.

    Possible values: "Application", "Database", "File", "FileStorage", "MessageBroker", "SDK" or "Webhook".
  • categories

    array of string

    The categories of the connector. There is always at least one.

  • asSource

    nullable object

    The characteristics of the connector when it is used as a data source. This will be null if the connector cannot function as a data source.

    • asSource.targets

      array of string

      The targets supported by the connector when it is used as a source. It includes one or more of the following: "Event" and "User"

    • asSource.hasSettings

      boolean

      It indicates if the connector has settings when it is used as a source.

    • asSource.sampleQuery

      string

      The sample query displayed in the query editor when creating a new database source pipeline.

      It is empty if the connector is not a database connector.

    • asSource.summary

      string

      A brief description of the connector when it is used as a source.

  • asDestination

    nullable object

    The characteristics of the connector when it is used as a data destination. This will be null if the connector cannot function as a data destination.

    • asDestination.targets

      array of string

      The targets supported by the connector when it is used as a destination. It includes one or more of the following: "Event", and "User"

    • asDestination.hasSettings

      boolean

      It indicates if the connector has settings when it is used as a destination.

    • asDestination.sendingMode

      nullable string

      The mode used by application connectors to send the events to the application, if the application supports events. It is empty if the connector is not an application or it does not handle events.

      Possible values: "Client", "Server" or "ClientAndServer".
    • asDestination.summary

      string

      A brief description of the connector when it is used as a destination.

  • terms

    object

    Specific terms by which the connector refers to various entities, such as users and groups.

    • terms.user

      string

      The term used to indicate a single user. For example "Client", "Customer" or "User".

    • terms.users

      string

      The term used to indicate the users. For example "Clients", "Customers" or "Users".

    • terms.userID

      string

      The term used to indicate the user identifier. For example "ID", "User ID", or "Unique ID".

  • hasSheets

    boolean

    It indicates, for file connectors, if it supports sheets. It is false if the connector is not a file connector or does not support sheets.

  • fileExtension

    string

    The main extension of the file type that the connector reads and writes. It is used as a placeholder in the input field, where the user specifies the file name to read or write.

    It is empty if the connector is not a file connector.

  • requiresAuth

    boolean

    Indicates whether an authorization is required to create a connection for this connector. It is false if the connector is not an application or does not require authorization.

  • authConfigured

    boolean

    Indicates whether the required OAuth credentials (client ID and client secret) have been provided for this connector. It is true only if the connector requires authorization and the necessary environment variables are set.

  • strategies

    boolean

    Indicates whether the connector requires a strategy to be configured for user management.

    If true, the strategy is mandatory and must be provided when creating connections for this connector, otherwise, if false, the strategy is not allowed for such connections.

GET /v1/connectors/:code
curl https://example.com/v1/connectors/hubspot \
-H "Authorization: Bearer api_xxxxxxx"
Response
{
  "code": "hubspot",
  "label": "HubSpot",
  "type": "Application",
  "categories": [
    "CRM"
  ],
  "asSource": {
    "targets": [
      "User"
    ],
    "hasSettings": true,
    "sampleQuery": "",
    "summary": "Import contacts as users and companies as groups from HubSpot"
  },
  "asDestination": {
    "targets": [
      "User"
    ],
    "hasSettings": true,
    "sendingMode": null,
    "summary": "Export users as contacts and groups as companies to HubSpot"
  },
  "terms": {
    "user": "Contact",
    "users": "Contacts",
    "userID": "HubSpot ID"
  },
  "hasSheets": false,
  "fileExtension": "",
  "requiresAuth": true,
  "authConfigured": true,
  "strategies": true
}
Errors
404
connector does not exist

Get connector documentation

Get the documentation of a connector.

Request

  • :code

    string Required

    The connector's code.

Response

  • source

    object

    The documentation of the connector when it is used as a source.

    • source.summary

      string

      A brief description of the connector.

    • source.overview

      string

      A Markdown-formatted overview of the connector.

  • destination

    object

    The documentation of the connector when it is used as a destination.

    • destination.summary

      string

      A brief description of the connector.

    • destination.overview

      string

      A Markdown-formatted overview of the connector.

GET /v1/connectors/:code/documentation
curl https://example.com/v1/connectors/hubspot/documentation \
-H "Authorization: Bearer api_xxxxxxx"
Response
{
  "source": {
    "summary": "Import contacts as users from HubSpot",
    "overview": "# HubSpot\nThe HubSpot data source allows..."
  },
  "destination": {
    "summary": "Export users as contacts to HubSpot",
    "overview": "# HubSpot\nThe HubSpot data destination allows..."
  }
}
Errors
404
connector does not exist