---
title: "Dynamic client registration (RFC 7591)"
method: POST
path: "/oauth/register"
tags: ["OAuth"]
---

# Dynamic client registration (RFC 7591)

`POST /oauth/register`

## Request

- Base URL: `https://youspot.com`
- URL: `https://youspot.com/oauth/register`
- Auth: none required

Open, with no pre-approval. Public clients are supported, so a `client_secret` is optional. Send `Idempotency-Key` so a retry after a dropped connection returns the first registration rather than making a second client.

## Headers

- `Idempotency-Key` string

## Request body

- ClientRegistration
  - `client_name` string, required
  - `redirect_uris` string[], required: https, or http on localhost.
  - `grant_types` string[]
  - `response_types` string[]
  - `token_endpoint_auth_method` 'none' | 'client_secret_post' | 'client_secret_basic'
  - `scope` 'linkedin'

## Response `201`

The registration, including `client_id`.

- ClientRegistrationResponse
  - `client_id` string, required
  - `client_secret` string: Confidential clients only. A public client is registered without one.
  - `client_id_issued_at` integer
  - `redirect_uris` string[], required
  - `client_name` string
  - `grant_types` string[]
  - `token_endpoint_auth_method` string

## Other responses

- `400`: The request was refused. `error` is stable; read `error_description` for the reason.
- `422`: This `Idempotency-Key` was already used on this operation with a different request body.

---

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