Stores the credential for a connector in the team’s encrypted vault and makes (or replaces) the connection. Read the credential from an environment variable (–secret-env NAME) or standard input (–secret-stdin); it is never taken from an argument, never printed and never returned. With –webhook it stores the secret the provider signs its events with instead. Settings the connector takes (a site or region) go in –config KEY=VALUE; they are checked against a fixed list, never a URL. Storing a credential is in the secrets autonomy class: an agent needs an independent approval first (run it, read the approval it names, then retry with OVERLANE_APPROVAL set).
Usage
overlane connector connect provider [--service URL] [--team TENANT_ID] [--secret-env NAME] [--secret-stdin] [--kind oauth|key] [--label TEXT] [--config KEY=VALUE...] [--project PROJECT_ID] [--webhook] [--dry-run]Arguments
| Argument | Required | Description |
|---|---|---|
provider |
yes | The connector, such as slack or linear (see overlane connector list) |
Flags
| Flag | Type | Required | Default | Description |
|---|---|---|---|---|
--service |
string | no | The service address (default: OVERLANE_SERVICE_URL, then the project’s binding, then the hosted service) | |
--team |
string | no | The team (tenant) to act on (default: the one your token belongs to) | |
--secret-env |
string | no | Environment variable that holds the credential | |
--secret-stdin |
boolean | no | Read the credential from standard input | |
--kind |
one of oauth, key |
no | oauth or key (default: what the connector uses) | |
--label |
string | no | A name for this credential (default: the connector name) | |
--config |
string (repeatable) | no | A setting such as cloudId or region; repeat for more | |
--project |
string | no | Connect for one project instead of the whole team | |
--webhook |
boolean | no | Store the secret the provider signs its inbound events with | |
--dry-run |
boolean | no | Print the requests and file changes this command would make, then stop. Needs no credentials. |
Examples
overlane connector connect slack --secret-env SLACK_BOT_TOKEN
overlane connector connect jira --secret-env JIRA_TOKEN --config cloudId=11111111-2222-3333-4444-555555555555
overlane connector connect stripe --webhook --secret-stdin
overlane connector connect teams --secret-env TEAMS_CLIENT_SECRET --config appId=00000000-0000-0000-0000-000000000000 --config tenantId=11111111-1111-1111-1111-111111111111
overlane connector connect linear --secret-env LINEAR_TOKEN --dry-runBehavior
- Effect:
write(changes local or hosted state). - Needs credentials: yes. Uses the network: yes.
- Supports
--dry-run: yes. Accepts--force: no. - Machine-readable description:
overlane schema connector connect.
Result
With --json (the default when stdout is not a terminal) the command prints this JSON Schema’s shape on stdout.
{
"anyOf": [
{
"type": "object",
"properties": {
"tenantId": {
"type": "string"
},
"connection": {
"type": "object",
"properties": {
"connectionId": {
"type": "string"
},
"provider": {
"type": "string"
},
"status": {
"type": "string"
},
"label": {
"type": "string"
},
"kind": {
"type": "string"
},
"purpose": {
"type": "string"
},
"fingerprint": {
"type": "string"
},
"scopes": {
"type": "array",
"items": {
"type": "string"
}
},
"config": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"project": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"revokedAt": {
"type": "string"
}
},
"required": [
"connectionId",
"provider",
"status",
"label",
"kind",
"purpose",
"fingerprint",
"scopes",
"config",
"createdAt"
],
"additionalProperties": false
},
"next": {
"type": "string"
}
},
"required": [
"tenantId",
"connection",
"next"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"dryRun": {
"type": "boolean",
"const": true
},
"service": {
"type": "string"
},
"requests": {
"type": "array",
"items": {
"type": "object",
"properties": {
"method": {
"type": "string"
},
"path": {
"type": "string"
},
"body": {},
"note": {
"type": "string"
}
},
"required": [
"method",
"path"
],
"additionalProperties": false
}
},
"commands": {
"type": "array",
"items": {
"type": "string"
}
},
"writes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"write",
"append",
"delete"
]
},
"description": {
"type": "string"
}
},
"required": [
"path",
"action",
"description"
],
"additionalProperties": false
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"dryRun",
"requests",
"commands",
"writes",
"notes"
],
"additionalProperties": false
}
]
}See exit codes for the status the process returns.