---
title: "Provider OAuth redirect target"
method: GET
path: "/connectors/callback"
tags: ["Connectors"]
---

# Provider OAuth redirect target

`GET /connectors/callback`

## Request

- Base URL: `https://api.infolang.ai`
- URL: `https://api.infolang.ai/connectors/callback`
- Auth: none declared

Where Google and Notion send the human back. NOT for API clients — it is called by a browser redirect and carries no credential of its own.

It sits outside `/v2` deliberately: `/v2` requires a bearer token and this request cannot have one. Authentication is the signed `state` handle instead, which binds the authorization to a workspace and a connection.

Always ends in a 302 to the console at `/connectors?connected=<id>` on success, or `?error=<code>` on failure — except when `state` itself is missing or forged, which is a 400, because there is no connection to attribute the failure to.

## Query parameters

- `state` string, required
- `code` string
- `error` string
- `error_description` string

## Other responses

- `302`: Redirect to the console, carrying `connected` or `error`
- `400`: `state` is missing, malformed, expired, or not signed by us

---

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