# PlaygroundOAuth2Input

**Kind:** Interface

**Source:** [`atloria-monorepo/apps/api/src/project/playground-oauth2-input.ts`](https://github.com/sherkety/atloria/blob/main/atloria-monorepo/apps/api/src/project/playground-oauth2-input.ts#L21)

Owner input → the `settings.playgroundOAuth2` block that `playground-oauth2.ts` overlays.

That module is the LAST line: it re-checks everything and silently drops a configuration it
cannot publish. Silence is right at serve time — a reader must never see a broken scheme — but
it is the wrong answer to the person typing the form, who would save, see nothing change on
their docs site, and have no idea why. So the same rules are stated here, out loud, at the
moment the owner can still fix them.

The one rule that is not merely duplicated is the refusal of a client secret. The overlay drops
secret-shaped values because it does not read them; this refuses them, because an owner pasting
their provider's app credentials needs to be told that a documentation page is a PUBLIC client
and there is nowhere in it to keep a secret — not to have it quietly swallowed and assume it
was stored.

## Properties

| Property | Type |
|---|---|
| `clientId` | `string` |
| `authorizationUrl` | `string` |
| `tokenUrl` | `string` |
| `openIdConnectUrl` | `string` |
| `scopes` | `Record<string, string>` |
