---
title: "Admin Register Oauth Client"
method: POST
path: "/v1/admin/oauth/clients"
---

# Admin Register Oauth Client

`POST /v1/admin/oauth/clients`

## Request

- Base URL: `https://api.storyflo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.storyflo.com/v1/admin/oauth/clients`
- Auth: none declared

Register a new OAuth client. Operator hands the credentials to
the partner platform (Anthropic, OpenAI, Coinbase, custom). Secret
is only shown ONCE in the response — there's no way to retrieve it.

Auth: admin token (X-Storyflo-Email-Token). This endpoint mints
credentials that grant programmatic access to the platform, so it
must require the strongest credential — not the shared api_key
that is embedded in browser bundles and partner SDKs.

## Headers

- `x-storyflo-email-token` string, nullable

## Request body

- OAuthClientCreate
  - `name` string, required
  - `redirect_uris` string[], required
  - `allowed_scopes` string[], required
  - `tier` string
  - `contact_email` string, nullable
  - `public_client` boolean

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/storyflo/apis/storyflo-inference-router.md) · [All operations](https://skmtc.dev/storyflo/apis/storyflo-inference-router/llms.txt) · [OpenAPI document](https://skmtc.dev/storyflo/apis/storyflo-inference-router/revisions/c3a1a735ac7a?raw)
