Skip to content

Connect Integration

POST /v1/connect

Starts an OAuth 2.0 authorization flow for an integration. Returns an OAuth URL that the user must visit to authorize access.

Required. Bearer token: Authorization: Bearer sk_xxx

{
"integration": "github"
}
FieldTypeRequiredDescription
integrationstringYesIntegration slug to connect
{
"oauth_url": "https://github.com/login/oauth/authorize?client_id=...&scope=...",
"connection_id": "conn_abc123"
}
FieldTypeDescription
oauth_urlstringURL to open in browser for OAuth consent
connection_idstringID to use when polling connection status
  1. Call this endpoint to get the OAuth URL
  2. Open the URL in a browser (CLI does this automatically)
  3. User authorizes on the service’s consent screen
  4. Service redirects back to Skillett’s callback
  5. Poll GET /v1/connect/:connectionId for completion
CodeErrorDescription
401unauthorizedMissing or invalid API key
403plan_limit_reachedMaximum connections for plan exceeded
404not_foundIntegration slug not found
Terminal window
$ curl -X POST \
-H "Authorization: Bearer sk_a1b2c3d4..." \
-H "Content-Type: application/json" \
-d '{"integration":"github"}' \
https://api.skillett.dev/v1/connect