Viridi · Schema
OAuth2ClientRegistrationTemplate
CompanyEnergyEnergy StorageBatteryIoTIndustrial IoTEnergy ManagementManufacturingTelematicsMicrogrid
Properties
| Name | Type | Description |
|---|---|---|
| id | object | |
| createdTime | integer | |
| providerId | string | OAuth2 provider identifier (e.g. its name) |
| mapperConfig | object | Default config for mapping OAuth2 log in response to platform entities |
| authorizationUri | string | Default authorization URI of the OAuth2 provider |
| accessTokenUri | string | Default access token URI of the OAuth2 provider |
| scope | array | Default OAuth scopes that will be requested from OAuth2 platform |
| userInfoUri | string | Default user info URI of the OAuth2 provider |
| userNameAttributeName | string | Default name of the username attribute in OAuth2 provider log in response |
| jwkSetUri | string | Default JSON Web Key URI of the OAuth2 provider |
| clientAuthenticationMethod | string | Default client authentication method to use: 'BASIC' or 'POST' |
| comment | string | Comment for OAuth2 provider |
| loginButtonIcon | string | Default log in button icon for OAuth2 provider |
| loginButtonLabel | string | Default OAuth2 provider label |
| helpLink | string | Help link for OAuth2 provider |
| name | string | |
| additionalInfo | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/viridi-parente/main/json-schema/viridi-parente-oauth2-client-registration-template-schema.json",
"title": "OAuth2ClientRegistrationTemplate",
"x-generated": "2026-10-20",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/viridi-parente-o-auth-2-config-template-controller-api-openapi.yml#/components/schemas/OAuth2ClientRegistrationTemplate",
"properties": {
"id": {
"$ref": "#/$defs/OAuth2ClientRegistrationTemplateId"
},
"createdTime": {
"type": "integer",
"format": "int64"
},
"providerId": {
"type": "string",
"description": "OAuth2 provider identifier (e.g. its name)"
},
"mapperConfig": {
"$ref": "#/$defs/OAuth2MapperConfig",
"description": "Default config for mapping OAuth2 log in response to platform entities"
},
"authorizationUri": {
"type": "string",
"description": "Default authorization URI of the OAuth2 provider"
},
"accessTokenUri": {
"type": "string",
"description": "Default access token URI of the OAuth2 provider"
},
"scope": {
"type": "array",
"description": "Default OAuth scopes that will be requested from OAuth2 platform",
"items": {
"type": "string"
}
},
"userInfoUri": {
"type": "string",
"description": "Default user info URI of the OAuth2 provider"
},
"userNameAttributeName": {
"type": "string",
"description": "Default name of the username attribute in OAuth2 provider log in response"
},
"jwkSetUri": {
"type": "string",
"description": "Default JSON Web Key URI of the OAuth2 provider"
},
"clientAuthenticationMethod": {
"type": "string",
"description": "Default client authentication method to use: 'BASIC' or 'POST'"
},
"comment": {
"type": "string",
"description": "Comment for OAuth2 provider"
},
"loginButtonIcon": {
"type": "string",
"description": "Default log in button icon for OAuth2 provider"
},
"loginButtonLabel": {
"type": "string",
"description": "Default OAuth2 provider label"
},
"helpLink": {
"type": "string",
"description": "Help link for OAuth2 provider"
},
"name": {
"type": "string"
},
"additionalInfo": {
"$ref": "#/$defs/JsonNode"
}
},
"required": [
"providerId"
],
"$defs": {
"JsonNode": {
"description": "A value representing the any type (object or primitive)"
},
"OAuth2BasicMapperConfig": {
"properties": {
"emailAttributeKey": {
"type": "string",
"description": "Email attribute key of OAuth2 principal attributes. Must be specified for BASIC mapper type and cannot be specified for GITHUB type"
},
"firstNameAttributeKey": {
"type": "string",
"description": "First name attribute key"
},
"lastNameAttributeKey": {
"type": "string",
"description": "Last name attribute key"
},
"tenantNameStrategy": {
"type": "string",
"description": "Tenant naming strategy. For DOMAIN type, domain for tenant name will be taken from the email (substring before '@')",
"enum": [
"DOMAIN",
"EMAIL",
"CUSTOM"
]
},
"tenantNamePattern": {
"type": "string",
"description": "Tenant name pattern for CUSTOM naming strategy. OAuth2 attributes in the pattern can be used by enclosing attribute key in '%{' and '}'"
},
"customerNamePattern": {
"type": "string",
"description": "Customer name pattern. When creating a user on the first OAuth2 log in, if specified, customer name will be used to create or find existing customer in the platform and assign customerId to the user"
},
"defaultDashboardName": {
"type": "string",
"description": "Name of the tenant's dashboard to set as default dashboard for newly created user"
},
"alwaysFullScreen": {
"type": "boolean",
"description": "Whether default dashboard should be open in full screen"
}
},
"required": [
"tenantNameStrategy"
]
},
"OAuth2ClientRegistrationTemplateId": {
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "string"
}
},
"required": [
"id"
]
},
"OAuth2CustomMapperConfig": {
"properties": {
"url": {
"type": "string"
},
"username": {
"type": "string"
},
"password": {
"type": "string"
},
"sendToken": {
"type": "boolean"
}
}
},
"OAuth2MapperConfig": {
"properties": {
"allowUserCreation": {
"type": "boolean",
"description": "Whether user should be created if not yet present on the platform after successful authentication"
},
"activateUser": {
"type": "boolean",
"description": "Whether user credentials should be activated when user is created after successful authentication"
},
"type": {
"type": "string",
"description": "Type of OAuth2 mapper. Depending on this param, different mapper config fields must be specified",
"enum": [
"BASIC",
"CUSTOM",
"GITHUB",
"APPLE"
]
},
"basic": {
"$ref": "#/$defs/OAuth2BasicMapperConfig",
"description": "Mapper config for BASIC and GITHUB mapper types"
},
"custom": {
"$ref": "#/$defs/OAuth2CustomMapperConfig",
"description": "Mapper config for CUSTOM mapper type"
}
},
"required": [
"type"
]
}
}
}
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
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/viridi-parente-oauth2-client-registration-template"
All schemas
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.