Skip to main content

Connectors

Refine can scan more than local files. Use connectors to pull knowledge from the tools your team already uses.

ody-refine connect <source>

Available Connectors

Notion

ody-refine connect notion
Env varDescription
NOTION_API_KEYIntegration token from notion.so/my-integrations

Share at least one page or database with the integration. Refine fetches all shared pages and converts blocks to markdown.

Slack

ody-refine connect slack
Env varDescription
SLACK_BOT_TOKENBot token (xoxb-...) from api.slack.com/apps

Required scopes: channels:history, channels:read, chat:write, users:read. Invite the bot to the channels you want scanned. Threads are expanded automatically.

Confluence

ody-refine connect confluence
Env varDescription
CONFLUENCE_URLYour Atlassian site URL (e.g., https://yoursite.atlassian.net)
CONFLUENCE_EMAILYour Atlassian email
CONFLUENCE_API_TOKENAPI token from id.atlassian.com

Fetches pages and converts Confluence storage format to markdown.

Linear

ody-refine connect linear
Env varDescription
LINEAR_API_KEYPersonal API key from linear.app/settings/api

Pulls issues, comments, and project descriptions from your workspace.

Jira

ody-refine connect jira
Env varDescription
JIRA_URLYour Atlassian site URL (e.g., https://yoursite.atlassian.net)
JIRA_EMAILYour Atlassian email
JIRA_API_TOKENAPI token from id.atlassian.com

Fetches issues and converts Atlassian Document Format (ADF) to markdown.

Microsoft Teams

ody-refine connect teams
Env varDescription
TEAMS_ACCESS_TOKENOAuth token with Microsoft Graph permissions

Required permissions: Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Read.All. Messages are converted from HTML to markdown.

Gmail

ody-refine connect gmail

Uses OAuth2 for authentication. Follow the interactive flow to authorize access to your Gmail account.

Integration Testing

All connectors can be tested against live APIs:

# Single connector
NOTION_API_KEY=ntn_xxx pnpm --filter ody-refine test -- integration/

# Multiple connectors
NOTION_API_KEY=ntn_xxx \
LINEAR_API_KEY=lin_api_xxx \
SLACK_BOT_TOKEN=xoxb-xxx \
pnpm --filter ody-refine test -- integration/

When env vars are missing, tests skip automatically -- no failures, no overhead.

Required Env Vars per Connector

ConnectorEnv vars
NotionNOTION_API_KEY
LinearLINEAR_API_KEY
SlackSLACK_BOT_TOKEN
ConfluenceCONFLUENCE_URL, CONFLUENCE_EMAIL, CONFLUENCE_API_TOKEN
JiraJIRA_URL, JIRA_EMAIL, JIRA_API_TOKEN
TeamsTEAMS_ACCESS_TOKEN
GmailOAuth2 (interactive flow)