{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/axway/main/json-schema/axway-identity-provider-list-schema.json", "title": "IdentityProviderList", "description": "A list of IdentityProvider objects.", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/axway-idp-api-openapi.yml#/components/schemas/IdentityProviderList", "type": "array", "items": { "$ref": "#/$defs/IdentityProvider" }, "$defs": { "DefaultFields": { "type": "object", "unevaluatedProperties": false, "properties": { "created": { "type": "string", "format": "date-time", "description": "Date created.", "readOnly": true }, "created_by": { "type": "object", "description": "Creator user or client.", "readOnly": true, "properties": { "guid": { "type": "string", "description": "`guid` of the creator." }, "type": { "type": "string", "description": "Type of the creator.", "enum": [ "user", "client" ] } } }, "updated": { "type": "string", "format": "date-time", "description": "Date last updated.", "readOnly": true } } }, "IdentityProvider": { "type": "object", "required": [ "guid", "name", "protocol" ], "unevaluatedProperties": false, "allOf": [ { "$ref": "#/$defs/DefaultFields" } ], "properties": { "_id": { "type": "string", "description": "Document ID of the Identity Provider.", "deprecated": true }, "description": { "type": "string", "description": "Description of the Identity Provider." }, "guid": { "type": "string", "format": "uuid", "description": "`guid` of the Identity Provider." }, "name": { "type": "string", "description": "Name of Identity Provider" }, "orgs": { "type": "array", "description": "Organizations associated to this Identity Provider and their user associations.", "default": [], "items": { "type": "object", "required": [ "guid", "default_roles", "default_teams", "mapped_roles", "mapped_teams" ], "additionalProperties": false, "properties": { "case_insensitive_mapped_roles": { "type": "boolean", "description": "Whether to match returned mapped attribute values to expected attribute values without letter case sensitivity." }, "default_roles": { "type": "array", "description": "Array of role identifiers that are assigned to newly provisioned users in the Organization.", "items": { "type": "string", "enum": [ "administrator", "developer", "auditor", "consumer", "usage_reporter", "api_central_admin" ] } }, "default_teams": { "type": "array", "description": "Array of teams to assign newly provisioned users in the Organization.", "default": [], "items": { "type": "object", "required": [ "guid", "roles" ], "additionalProperties": false, "properties": { "guid": { "type": "string", "format": "uuid", "description": "`guid` of the team within the Organization the assign newly provisioned users." }, "roles": { "type": "array", "description": "Array of role identifiers that are assigned to newly provisioned users in the team.", "items": { "type": "string", "enum": [ "consumer", "subscription_admin", "developer", "catalog_manager", "subscription_approver", "api_access", "insights", "administrator", "marketplace_admin" ] } } } } }, "enforce_mapped_roles": { "type": "boolean", "description": "Whether to restrict organization role management solely to mapped IdP attributes. Any organization role(s) that a user has that does not match to an associated mapper (or the Default Organization Roles) will be removed on subsequent sign in." }, "enforce_mapped_teams": { "type": "boolean", "description": "Whether to restrict team membership and role management solely to mapped IdP attributes. Any team memberships or roles that a user has that does not match to an associated mapper will be removed on subsequent sign in." }, "guid": { "type": "string", "format": "uuid", "description": "`guid` of the Organization the Identity Provider is associated to." }, "mapped_roles": { "type": "array", "description": "Array of role identifiers to assign users in the Organization based on attributes defined by the Identity Provider.", "default": [], "items": { "type": "object", "required": [ "value", "roles" ], "additionalProperties": false, "properties": { "friendly": { "type": "string", "description": "Friendly name of the attribute provided by the SAML Identity Provider." }, "name": { "type": "string", "description": "Name of the attribute provided by the Identity Provider." }, "roles": { "type": "array", "description": "Array of role identifiers to be assigned to matching users in the Organization.", "items": { "type": "string", "enum": [ "administrator", "developer", "auditor", "consumer", "usage_reporter", "api_central_admin" ] } }, "value": { "type": "string", "description": "Value of the named attribute to determine whether to apply the role." } } } }, "mapped_teams": { "type": "array", "description": "Array of teams to assign users in the Organization based on attributes defined by the Identity Provider.", "default": [], "items": { "type": "object", "required": [ "team_guid", "value", "roles" ], "additionalProperties": false, "properties": { "friendly": { "type": "string", "description": "Friendly name of the attribute provided by the SAML Identity Provider." }, "name": { "type": "string", "description": "Name of the attribute provided by the Identity Provider." }, "roles": { "type": "array", "description": "Array of role identifiers to be assigned to matching users in the team.", "items": { "type": "string", "enum": [ "consumer", "subscription_admin", "developer", "catalog_manager", "subscription_approver", "api_access", "insights", "administrator", "marketplace_admin" ] } }, "team_guid": { "type": "string", "format": "uuid", "description": "`guid` of the team within the Organization the assign matching users." }, "value": { "type": "string", "description": "Value of the named attribute to determine whether to apply the team association." } } } }, "provision_adhoc": { "type": "boolean", "description": "Whether to automatically register users who authenticate using the Identity Provider that are not on an associated claimed email domain as members of the organization.", "default": false }, "restrict_domain_users": { "type": "boolean", "description": "Whether to automatically restrict users provisioned via domain association to authenticate using the Identity Provider.", "default": false } } } }, "protocol": { "type": "string", "description": "Protocol the Identity Provider uses.", "enum": [ "oidc", "saml" ] }, "provider_guid": { "type": "string" } } } } }