---
title: "Start an OAuth2 connection flow"
method: POST
path: "/integrations/oauth/{provider}/start"
tags: ["Integrations"]
---

# Start an OAuth2 connection flow

`POST /integrations/oauth/{provider}/start`

## Request

- Base URL: `https://api.atako.ai`
- URL: `https://api.atako.ai/integrations/oauth/{provider}/start`
- Auth: HTTP bearer

Returns the provider authorize URL to redirect the browser to.

## Path parameters

- `provider` string, required

## Request body

- object
  - `displayName` string
  - `visibility` 'company' | 'personal': 'company' (admins only) or 'personal'. Defaults to 'company' for an admin, 'personal' otherwise.
  - `config` object: Required unless the connector skips config fields for OAuth.

## Response `200`

- object
  - `url` string, uri, required

## Other responses

- `400`: config_invalid / config_host_not_public (a `publicHost` config field that does not resolve to public addresses only) — both with the offending `field`
- `401`: Missing, malformed, or invalid bearer token / API key, or revoked session (SESSION_REVOKED).
- `403`: company_admin_required — only a company admin can start a 'company' connection
- `404`: unknown_provider — not found, or not an oauth2 connector.
- `409`: provider_coming_soon — the provider is not open to clients yet (catalog `availability` is `coming_soon`); a `message` explains it. / name_taken
- `503`: oauth_not_configured — the platform OAuth app credentials are not provisioned for this connector.

---

[API](https://skmtc.dev/atako/apis/atako-api.md) · [All operations](https://skmtc.dev/atako/apis/atako-api/llms.txt) · [OpenAPI document](https://skmtc.dev/atako/apis/atako-api/revisions/aa555c56fbd7?raw)
