Integrations Overview
Backflow supports 50+ integrations via built-in connectors and custom configurations.
Built-in Integrations
| Integration | Description |
|---|---|
| JIRA | Issues, projects, sprints, users |
| GitHub | Issues, pull requests, repositories |
| Stripe | Payments, subscriptions, customers |
| Slack | Messages, notifications |
| SendGrid | Email delivery |
| Twilio | SMS, WhatsApp |
| Polar | Subscriptions, benefits |
Configuration
Add credentials in config.json:
json
{
"credentials": {
"jira": {
"baseUrl": "https://your-org.atlassian.net",
"email": "{{env.JIRA_EMAIL}}",
"apiToken": "{{env.JIRA_API_TOKEN}}"
},
"stripe": {
"secretKey": "{{env.STRIPE_SECRET_KEY}}"
},
"slack": {
"webhookUrl": "{{env.SLACK_WEBHOOK_URL}}"
}
}
}Using in Routes
Direct Integration
json
{
"path": "/notify",
"method": "post",
"integrations": [{
"type": "slack",
"action": "sendMessage",
"params": {
"channel": "#alerts",
"text": "{{body.message}}"
}
}]
}Chained Operations
json
{
"path": "/order",
"method": "post",
"supabaseQueries": [{
"table": "orders",
"operation": "insert"
}],
"integrations": [
{ "type": "stripe", "action": "createPaymentIntent" },
{ "type": "sendgrid", "action": "sendEmail" },
{ "type": "slack", "action": "sendMessage" }
]
}In Workflows
json
{
"steps": [
{
"id": "fetch-ticket",
"type": "integration",
"integration": "jira",
"action": "getIssue",
"params": { "issueKey": "{{input.key}}" }
},
{
"id": "notify",
"type": "integration",
"integration": "slack",
"action": "sendMessage",
"params": {
"text": "Ticket: {{steps.fetch-ticket.result.fields.summary}}"
}
}
]
}Custom Integrations
Add any REST API:
json
{
"customIntegrations": [{
"name": "myapi",
"baseUrl": "https://api.example.com",
"auth": {
"type": "bearer",
"token": "{{env.API_KEY}}"
},
"actions": {
"getData": { "method": "GET", "path": "/data" }
}
}]
}Learn more about Custom Integrations →
OAuth2 Integrations
For APIs requiring OAuth2:
json
{
"credentials": {
"salesforce": {
"oauth2": {
"clientId": "{{env.SF_CLIENT_ID}}",
"clientSecret": "{{env.SF_CLIENT_SECRET}}",
"accessToken": "{{env.SF_ACCESS_TOKEN}}",
"refreshToken": "{{env.SF_REFRESH_TOKEN}}",
"tokenUrl": "https://login.salesforce.com/services/oauth2/token"
}
}
}
}Integration Files
Store integrations in ./integrations/:
integrations/
├── jira.json
├── github.json
├── custom-api.json
└── salesforce.jsonAuto-loaded on startup.