Uses: Python · TypeScript · CLI · REST API
cURL samples assume
BASE=https://api.engini.io/v1 and AUTH="x-api-key: $ENGINI_API_KEY" - the setup from the REST walkthrough.1. Find the OAuth method
Each application exposes one or more authentication methods. You need theauthenticationId of one where requiresOAuthSignIn is true.
2. Get a sign-in URL
signInUrl (redirect, popup, or new tab). Keep the state - it’s how you collect the result. Store it against the user’s session.
3. Poll until they finish
Engini captures the provider’s callback for you. Poll with thestate until a token appears.
4. Create the connection
Build the credential fields fromconnectionData only.
connectionId entirely and still resolve. Without one - and with more than one connection for that app - execution fails with 409 NO_DEFAULT_CONNECTION.
Doing it without writing any of this
The CLI implements this whole flow, including the agent-resumable variant:Next
- Databases and similar apps need object selection after connecting
- Non-OAuth apps skip steps 2-3 entirely - see REST walkthrough