Fudan University OpenID Connect discovery document
Schema derived from the live response of https://id.fudan.edu.cn/idp/.well-known/openid-configuration captured 2026-08-30. Every property and enumerated value below was present in that response; none were added. Note the non-conformant member name 'end_session_endpoint ' (trailing space) — it is modelled as observed rather than corrected.
Properties
| Name | Type | Description |
|---|---|---|
| issuer | string | |
| authorization_endpoint | string | |
| token_endpoint | string | |
| userinfo_endpoint | string | |
| jwks_uri | string | |
| end_session_endpoint | string | Observed member name carries a trailing space in the live document. Not the OpenID Connect Discovery 1.0 member name. |
| response_types_supported | array | |
| grant_types_supported | array | |
| scopes_supported | array | |
| claims_supported | array | |
| subject_types_supported | array | |
| id_token_signing_alg_values_supported | array | |
| request_parameter_supported | boolean |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/fudan/main/json-schema/fudan-openid-configuration-schema.json",
"title": "Fudan University OpenID Connect discovery document",
"description": "Schema derived from the live response of https://id.fudan.edu.cn/idp/.well-known/openid-configuration captured 2026-08-30. Every property and enumerated value below was present in that response; none were added. Note the non-conformant member name 'end_session_endpoint ' (trailing space) — it is modelled as observed rather than corrected.",
"x-provenance": {
"method": "derived",
"source": "https://id.fudan.edu.cn/idp/.well-known/openid-configuration",
"derived_from": "examples/fudan-openid-configuration.json",
"generated": "2026-08-30",
"x-operator": "institution"
},
"type": "object",
"required": ["issuer", "authorization_endpoint", "token_endpoint", "userinfo_endpoint", "jwks_uri"],
"properties": {
"issuer": { "type": "string", "format": "uri", "const": "https://id.fudan.edu.cn/idp" },
"authorization_endpoint": { "type": "string", "format": "uri" },
"token_endpoint": { "type": "string", "format": "uri" },
"userinfo_endpoint": { "type": "string", "format": "uri" },
"jwks_uri": { "type": "string", "format": "uri" },
"end_session_endpoint ": {
"type": "string",
"format": "uri",
"description": "Observed member name carries a trailing space in the live document. Not the OpenID Connect Discovery 1.0 member name."
},
"response_types_supported": {
"type": "array",
"items": { "type": "string", "enum": ["code", "token", "id_token"] }
},
"grant_types_supported": {
"type": "array",
"items": { "type": "string", "enum": ["implicit", "authorization_code", "refresh_token"] }
},
"scopes_supported": {
"type": "array",
"items": { "type": "string", "enum": ["openid"] }
},
"claims_supported": {
"type": "array",
"items": { "type": "string", "enum": ["sub", "iss", "auth_time", "aud", "exp", "iat", "uid"] }
},
"subject_types_supported": {
"type": "array",
"items": { "type": "string", "enum": ["public"] }
},
"id_token_signing_alg_values_supported": {
"type": "array",
"items": { "type": "string", "enum": ["RS256", "ES256", "HS256"] }
},
"request_parameter_supported": { "type": "boolean" }
},
"additionalProperties": true
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/fudan-openid-configuration"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.