Skip to main content
Connections allow your Agent to integrate directly with third-party applications and services. A connection can exist as the following:
  • Source: where data is retrieved from
  • Destination: where the Agent’s output is sent
Below are all supported connections and steps on how to integrate with them. Agents can also be connected using our API or Python Client. If you do not see a connection you’d like to use, contact us and we will prioritize support!

Amazon S3

Amazon S3 can be configured as a source or destination for your Agents. To connect an Amazon S3 bucket to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. If an Amazon S3 integration already exists, click “Select” under “Amazon S3” and choose an account. Otherwise, click “Connect” and follow the configuration steps below:
  4. Step 1: Specify Bucket(s)

    1. Enter the bucket name(s) you wish to connect
    2. Click “Continue”

    Step 2: Create Access Policy

    1. Copy the “Access Policy” JSON
    2. In your AWS console:
      1. Navigate to IAM Policies page
      2. Click “Create Policy” and select the “JSON” tab
      3. Paste the copied JSON
      4. Click through the “Next” buttons, adding the desired name, description, and tags

    Step 3: Create Trust Policy

    1. Copy the “Trust Policy” JSON
    2. In your AWS console:
      1. Navigate to IAM Roles page
      2. Click “Create Role” and select “Custom trust policy”
      3. Paste the copied JSON
      4. Search for and select the access policy created in Step 2. Click “Next”
      5. Provide a role name and review the permissions, then click “Create role”
      6. Copy the role’s ARN for use in the next step

    Step 4: Save Integration

    1. In Kolena, click “Continue”
    2. Enter the ARN of the role created in Step 3
    3. Click “Finish”
  5. Select the bucket and folder you wish to connect to

Azure Blob Storage

Azure Blob Storage can be configured as a source or destination for your Agents. To connect Azure Blob Storage to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. If an Azure Blob Storage integration already exists, click “Select” under “Azure Blob Storage” and choose an account. Otherwise, click “Connect” and follow the configuration steps below:
  4. Step 1: Create Azure App Registration for Kolena

    1. From the Azure portal, search for “App registrations” and navigate to this page
    2. Click “New Registration”
      1. Under “Supported account types”, select “Accounts in any organizational directory”
      2. Click “Register” to save the App registration
    3. Click on the App registration you have created
    4. Note the “Tenant ID” and “Application (client) ID”
    5. Click “Certificates & secrets”, then “New client secret”
      1. Click “Add” to save this secret and note the key value

    Step 2: Assign Roles to App Registration

    Assign Storage Blob Delegator Role

    1. Navigate to the storage account containing your blobs
    2. Click “Access Control (IAM)“
    3. Click the “Role assignments” tab
      1. Click “Add”, then “Add role assignment”
    4. Search for and select “Storage Blob Delegator”
    5. Click on the “Members” tab, then click “Select members”
      1. Search for the App registration created in Step 1
      2. Click “Select”
    6. Click “Review + assign” to save

    Assign Storage Blob Data Reader Role

    1. From the storage account, click “Containers” under “Data Storage” and click on the container containing your blobs
    2. Click “Access Control (IAM)“
    3. Click the “Role assignments” tab
      1. Click “Add”, then “Add role assignment”
    4. Search for and select “Storage Blob Data Reader”
    5. Click on the “Members” tab, then click “Select members”
      1. Search for the App registration created in Step 1
      2. Click “Select”
    6. Click “Review + assign” to save
    7. (Optional) Repeat the steps above for any additional containers you wish to connect

    Assign Storage Blob Data Contributor Role

    1. From the storage account, click “Containers” under “Data Storage” and click on the container containing your blobs
    2. Click “Access Control (IAM)“
    3. Click the “Role assignments” tab
      1. Click “Add”, then “Add role assignment”
    4. Search for and select “Storage Blob Data Contributor”
    5. Click on the “Members” tab, then click “Select members”
      1. Search for the App registration created in Step 1
      2. Click “Select”
    6. Click “Review + assign” to save
    7. (Optional) Repeat the steps above for any additional containers you wish to connect

    Step 3: Save Integration

    1. In Kolena, fill in the fields for the integration:
      1. Tenant ID: The Directory (tenant) ID of the App registration created in Step 1
      2. Client ID: The Application (client) ID of the App registration created in Step 1
      3. Client Secret: The secret key for the App registration created in Step 1
      4. Storage Account Name: The storage account in Azure you wish to connect to
      5. Storage Blob Endpoint URL: The endpoint for accessing the storage account. Can be found in “Endpoints” under “Settings” for your storage account. Usually of the form https://<storage-account-name>.blob.core.windows.net
      6. Container(s): The Azure storage container(s) to which you granted role permissions in Step 2
    2. Click “Finish”
  5. Select the container and folder you wish to connect to

Box

Box can be configured as a source or destination for your Agents. To connect a Box account to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. If a Box integration already exists, click “Select” under “Box” and choose an account. Otherwise, click “Connect” and click to authorize access
  4. Select the folder you wish to connect to

Email

Agents can be set up to receive emails as a source, or send emails to a destination address. To connect an email address to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. Select the “Email” integration
  4. If adding as a source:
    1. Copy the recipient email address (this is where emails must be sent to)
      • The recipient address can also optionally be modified
    2. (Optional) Specify a sender or domain the email must be sent from. If omitted, the Agent will accept emails from any email address
    3. Click “Confirm”
    4. Send or forward emails to the recipient address
      • Automatic forwarding can be configured in your email provider, e.g. Gmail or Outlook. Note that for Gmail forwarding, Kolena will automatically handle the verification step for the provided recipient address
  5. If adding as a destination:
    1. Specify a recipient email address
    2. An Agent can send emails to a fixed recipient address, or dynamically generate the recipient address, subject, and body based on the Agent’s output. To do this:
      • Create a prompt for the Agent and ensure the prompt name includes the keyword “email” (e.g. “email address” or “email subject”)
      • Select this prompt from the “To:”, “Subject:”, or “Body:” fields
    3. (Optional) Modify the generated sender address, or use your own. This is the address the Agent will send emails from
      • When using your own email address, you will need to send and accept a verification email for the specified address
    4. Click “Confirm”

Gmail

Gmail can be configured as a source for your Agents. To connect a Gmail account to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source
  3. If a Gmail integration already exists, click “Select” under “Gmail” and choose an account. Otherwise, click “Connect” and click to authorize access
  4. When prompted by Google, ensure you select the following required scopes: View your email messages and settings.
  5. (Optional) Specify a sender (email address) or labels to filter emails. By default, all emails to the account will be part of the source
  6. Click “Confirm”

Google Drive

Google Drive can be configured as a source or destination for your Agents. To connect a Google Drive to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. If a Google Drive integration already exists, click “Select” under “Google Drive” and choose an account. Otherwise, click “Connect” and click to authorize access
  4. When prompted by Google, ensure you select the following required scopes: See, edit, create, and delete all of your Google Drive files.
  5. Select the folder you wish to connect to

Google Sheet

Results from an Agent can be exported to a spreadsheet in your Google Drive. Select Google Drive as a destination using the instructions above, then:
  1. Select “xlsx” as the export format
  2. Click “Export as Single Excel File”
The results of the Agent will be sent to a single spreadsheet in the specified location. Each row will represent the results of a Run for the Agent.
Adding or removing Runs from the Agent will add or remove rows from the Google Sheet, respectively.

Notion (KMS)

Knowledge Management Systems (KMS) can be configured as prompt documents for your Agents. Supported systems:
  • Notion
To connect a KMS platform to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to connect an account
  3. Click the “KMS” card
  4. If a KMS integration already exists, click “Select” under “KMS” and choose an account. Otherwise, click “Connect” and click to authorize access

Salesforce (CRM)

CRM (Customer Relationship Management) systems can be configured as a destination for your Agents. Supported systems:
  • Salesforce
To connect a CRM platform to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a destination
  3. Click the “CRM” card
  4. If a CRM integration already exists, click “Select” under “CRM” and choose an account. Otherwise, click “Connect” and click to authorize access

Sharepoint

Sharepoint can be configured as a source or destination for your Agents. To connect a Sharepoint drive to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a source or destination
  3. If a Sharepoint integration already exists, click “Select” under “Sharepoint” and choose an account. Otherwise, click “Connect” and click to authorize access
  4. Select the site you wish to connect to, followed by the drive, and then any directory within the drive

Excel

Results from an Agent can be exported to a spreadsheet in your SharePoint. Select SharePoint as a destination using the instructions above, then:
  1. Select “xlsx” as the export format
  2. Click “Export as Single Excel File”
The results of the Agent will be sent to a single spreadsheet in the specified location. Each row will represent the results of a Run for the Agent.
Adding or removing Runs from the Agent will add or remove rows from the SharePoint Excel file, respectively.

Webhook

Check out the Integrate with Webhook Connection section for details on setting up your service to receive webhook deliveries. Once the your service is ready, you can follow the steps in this section to register your webhook.
A webhook can be configured as a destination for your Agents. To connect a webhook URL to an Agent:
  1. Navigate to the Agent you wish to connect
  2. Click the “Connections” tab and click to add a destination
  3. If a Webhook integration already exists, click “Select” under “Webhook” and choose an account. Otherwise, click “Connect” and follow the configuration steps below:
  4. Step 1: Specify Webhook URL

    1. Enter the webhook URL you wish to connect, e.g. https://example.com/webhook/document-agent/results
    2. Click “Continue”

    Step 2: Save the Secret

    1. Copy the “secret” and save it securely. Use the secret to validate authenticity and integrity of requests from Kolena
    2. Click “Finish”
  5. (Optional) Specify an additional path to the selected webhook URL. The final URL for the destination would be <webhook_url>/<path>
  6. Click “Confirm”
I