Skip to main content

register_client

Function register_client 

Source
pub async fn register_client(
    __arg0: State<ApiState>,
    headers: HeaderMap,
    __arg2: Json<ClientRegistrationRequest>,
) -> impl IntoResponse
Expand description

POST /oauth/register โ€” dynamically register a new OAuth 2.0 client (RFC 7591).

Requires a valid Bearer token with admin role, or an Initial Access Token stored in KV at oauth2_initial_access_token. Unauthenticated callers are rejected to prevent resource exhaustion.

ยงExample

โ“˜
let resp = register_client(
    State(state),
    headers,   // with Authorization: Bearer <admin-token>
    Json(ClientRegistrationRequest {
        redirect_uris: vec!["https://example.com/cb".into()],
        client_name: Some("My App".into()),
        ..Default::default()
    }),
).await;