PingOne Platform integration
PingOne Platform is Ping Identity's cloud identity service. Manage the users of one PingOne environment (create, update, enable or disable, lock and unlock, move between populations, force a password change, end sessions), groups and nesting, populations, admin role assignments for users, groups and applications, applications with their grants, sign-on policy assignments and attribute mappings, resources, scopes and custom claims, custom admin roles, sign-on and password policies, external identity providers and their attribute mappings, user schema attributes and webhook subscriptions, and read audit events and usage counts. Left out: environment and organization administration, built-in roles outside the environment, certificates and keys, gateways, notification and branding settings, propagation, MFA devices, and every route that returns or sets a secret or a password value (application and resource secrets, password set or check); client secrets and webhook request headers are removed from answers. Authentication: OAuth 2 client credentials of a worker application in the environment (client id and secret, client_secret_basic), with the region domain and environment id; what each call may do depends on the admin roles assigned to that worker application.
Say what should happen.
The workflow builds itself.
What you can do with PingOne Platform
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Attribute, 16 operations
create_application_attribute_mappingCreate application attribute mappingPOSTAdds an attribute mapping to an application (id from list_applications); name and value (such as ${user.email}) are required. Needs permission applications:create:application.create_identity_provider_attribute_mappingCreate identity provider attribute mappingPOSTMaps an identity provider attribute to a PingOne user attribute: name is the user attribute, value the placeholder ${providerAttributes.<name>}, update EMPTY_ONLY or ALWAYS. Needs permission identityProviders:create:identityProvider.create_resource_attributeCreate resource attributePOSTAdds a custom attribute (an access token claim) to a resource (id from list_resources); name and value are required. Needs permission resources:create:attribute.create_schema_attributeCreate schema attributePOSTAdds a custom attribute to a schema (id from list_schemas), such as the User schema. Set multiValued true to hold a list of values. Needs permission dir:update:schema.delete_application_attribute_mappingDelete application attribute mappingDELETEDeletes one attribute mapping of an application (ids from list_applications and list_application_attribute_mappings). Needs permission applications:delete:application.delete_identity_provider_attribute_mappingDelete identity provider attribute mappingDELETEDeletes one attribute mapping of an identity provider (ids from list_identity_providers and list_identity_provider_attribute_mappings). Needs permission identityProviders:delete:identityProvider.delete_resource_attributeDelete resource attributeDELETEDeletes one custom attribute of a resource (ids from list_resources and list_resource_attributes). Needs permission resources:delete:attribute.delete_schema_attributeDelete schema attributeDELETEDeletes a custom attribute of a schema (ids from list_schemas and list_schema_attributes). Needs permission dir:delete:schema.get_application_attribute_mappingGet application attribute mappingGETFetches one attribute mapping of an application (ids from list_applications and list_application_attribute_mappings). Needs permission applications:read:application.get_identity_provider_attribute_mappingGet identity provider attribute mappingGETFetches one attribute mapping of an identity provider (ids from list_identity_providers and list_identity_provider_attribute_mappings). Needs permission identityProviders:read:identityProvider.get_resource_attributeGet resource attributeGETFetches one custom attribute of a resource (ids from list_resources and list_resource_attributes). Needs permission resources:read:attribute.get_schema_attributeGet schema attributeGETFetches one attribute of a schema (ids from list_schemas and list_schema_attributes). Needs permission dir:read:schema.list_application_attribute_mappingsList application attribute mappingsGETLists the attribute mappings of an application (id from list_applications): which user attributes are sent to it as claims or SAML attributes. Needs permission applications:read:application.list_identity_provider_attribute_mappingsList identity provider attribute mappingsGETLists how an identity provider's (id from list_identity_providers) attributes map to PingOne user attributes. Needs permission identityProviders:read:identityProvider.list_resource_attributesList resource attributesGETLists the custom attributes (access token claims) of a resource (id from list_resources). Needs permission resources:read:attribute.list_schema_attributesList schema attributesGETLists the attributes of a schema (id from list_schemas), core and custom, with type, enabled, required, unique and multiValued. Needs permission dir:read:schema.
Role assignment, 12 operations
create_application_role_assignmentCreate application role assignmentPOSTGrants an admin role to an application (id from list_applications): role.id and a scope (type and id). A worker application then gets that access to the APIs. Needs permission applicationRoles:create:applicationRoleAssignment.create_group_role_assignmentCreate group role assignmentPOSTGrants an admin role to every member of a group (id from list_groups): role.id and a scope (type and id) are both required. Needs permission permissions:create:groupRoleAssignments.create_user_role_assignmentCreate user role assignmentPOSTGrants an admin role to a user (id from list_users): role.id and a scope (type ORGANIZATION, ENVIRONMENT, POPULATION or APPLICATION, with its id). This gives the user real admin access. Needs permission permissions:update:userRoleAssignments.delete_application_role_assignmentDelete application role assignmentDELETERevokes one admin role assignment from an application (ids from list_applications and list_application_role_assignments). Needs permission applicationRoles:delete:applicationRoleAssignment.delete_group_role_assignmentDelete group role assignmentDELETERevokes one admin role assignment from a group and so from its members (ids from list_groups and list_group_role_assignments). Needs permission permissions:delete:groupRoleAssignments.delete_user_role_assignmentDelete user role assignmentDELETERevokes one admin role assignment from a user (ids from list_users and list_user_role_assignments). PingOne answers 204 with no body. Needs permission permissions:update:userRoleAssignments.get_application_role_assignmentGet application role assignmentGETFetches one admin role assignment of an application (ids from list_applications and list_application_role_assignments). Needs permission applicationRoles:read:applicationRoleAssignment.get_group_role_assignmentGet group role assignmentGETFetches one admin role assignment of a group (ids from list_groups and list_group_role_assignments). Needs permission permissions:read:groupRoleAssignments.get_user_role_assignmentGet user role assignmentGETFetches one admin role assignment of a user (ids from list_users and list_user_role_assignments). Needs permission permissions:read:userRoleAssignments.list_application_role_assignmentsList application role assignmentsGETLists the admin role assignments of an application (id from list_applications), as for a worker application calling the PingOne APIs. Needs permission applicationRoles:read:applicationRoleAssignment.list_group_role_assignmentsList group role assignmentsGETLists the admin role assignments of a group (id from list_groups); its members hold these roles. Needs permission permissions:read:groupRoleAssignments.list_user_role_assignmentsList user role assignmentsGETLists the admin role assignments of a user (id from list_users), each with its role id and scope (organization, environment, population or application). Needs permission permissions:read:userRoleAssignments.
Member of group, 7 operations
add_user_to_groupAdd user to groupPOSTAdds a user (id from list_users) directly to a group (group.id from list_groups). An admin cannot add or remove themselves from a group that carries admin roles. Needs permission dir:create:groupMembership.get_group_nestingGet group nestingGETFetches one nesting of a group in a parent group (ids from list_groups and list_parent_groups).get_user_group_membershipGet user group membershipGETFetches one group membership of a user (ids from list_users and list_user_groups); expand=group adds the group details. Needs permission dir:read:groupMembership.list_parent_groupsList parent groupsGETLists the groups that contain a group (id from list_groups), that is the groups it is nested in. Needs permission dir:read:group.list_user_groupsList user groupsGETLists the groups a user (id from list_users) is a member of in _embedded.groupMemberships; expand=group adds each group's details. Needs permission dir:read:groupMembership.nest_groupNest groupPOSTNests a group (id from list_groups) in another group (id in the body): the members of the first group become members of the second. Needs permission dir:create:group.remove_user_from_groupRemove user from groupDELETERemoves a user from a group they were added to directly (ids from list_users and list_user_groups). Members added by the group userFilter cannot be removed this way. Needs permission dir:delete:groupMembership.
Population, 6 operations
create_populationCreate populationPOSTCreates a population; name is required. default true makes it the environment default population and sets every other population to false. Needs permission dir:create:population.delete_populationDelete populationDELETEPermanently deletes a population (id from list_populations). Only an empty population that is not the default can be deleted. Needs permission dir:delete:population.get_populationGet populationGETFetches one population by id (from list_populations), with its userCount, password policy and default flag. Needs permission dir:read:population.get_user_populationGet user populationGETReturns the id of the population a user (id from list_users) belongs to. Needs permission dir:read:population.list_populationsList populationsGETLists the populations of the environment in _embedded.populations, with userCount and default. filter takes name sw or id eq; limit, cursor from _links.next. Needs permission dir:read:population.move_user_to_populationMove user to populationPUTMoves a user (id from list_users) to another population (id from list_populations), which can change the password policy that applies to the user. Needs permission dir:update:population.
Action, 4 operations
create_sign_on_policy_actionCreate sign on policy actionPOSTAdds an action to a sign-on policy (id from list_sign_on_policies): type and priority (1 runs first) decide what users must complete at sign-on. Needs permission authn:create:signOnPolicy.delete_sign_on_policy_actionDelete sign on policy actionDELETEDeletes one action of a sign-on policy (ids from list_sign_on_policies and list_sign_on_policy_actions). Needs permission authn:delete:signOnPolicy.get_sign_on_policy_actionGet sign on policy actionGETFetches one action of a sign-on policy (ids from list_sign_on_policies and list_sign_on_policy_actions). Needs permission authn:read:signOnPolicy.list_sign_on_policy_actionsList sign on policy actionsGETLists the actions (LOGIN, MULTI_FACTOR_AUTHENTICATION, IDENTITY_PROVIDER, AGREEMENT...) of a sign-on policy (id from list_sign_on_policies), with their priority and conditions. Needs permission authn:read:signOnPolicy.
Application, 4 operations
create_applicationCreate applicationPOSTCreates an application; name, type and protocol are required. enabled defaults to false. A worker app inherits the creator's role assignments by default. Needs permission applications:create:application.delete_applicationDelete applicationDELETEPermanently deletes an application (id from list_applications); users can no longer sign on to it. Needs permission applications:delete:application.get_applicationGet applicationGETFetches one application by id (from list_applications), with its protocol settings. Its client secret, Play Integrity keys and integration template parameters are not returned. Needs permission applications:read:application.list_applicationsList applicationsGETLists the applications of the environment in _embedded.applications (OIDC, SAML, WS-Fed and built-in apps). Client secrets, Play Integrity settings and template parameters are not returned. Needs permission applications:read:application.
Grant, 4 operations
create_application_grantCreate application grantPOSTGrants an application (id from list_applications) access to a resource (resource.id from list_resources) and some of its scopes (ids from list_resource_scopes). Needs permission applications:create:grant.delete_application_grantDelete application grantDELETERevokes one resource access grant of an application (ids from list_applications and list_application_grants). Needs permission applications:delete:grant.get_application_grantGet application grantGETFetches one resource access grant of an application (ids from list_applications and list_application_grants). Needs permission applications:read:grant.list_application_grantsList application grantsGETLists the resource access grants of an application (id from list_applications): which resources and scopes it may request. Needs permission applications:read:grant.
Group, 4 operations
create_groupCreate groupPOSTCreates a group; name is required. A userFilter (SCIM expression) adds matching users to the group dynamically; population.id makes it a population group. Needs permission dir:create:group.delete_groupDelete groupDELETEPermanently deletes a group (id from list_groups). Admin roles assigned to the group are removed from the users who belonged to it. Needs permission dir:delete:group.get_groupGet groupGETFetches one group by id (from list_groups); include=totalMemberCounts adds the total number of members, direct and through userFilter. Needs permission dir:read:group.list_groupsList groupsGETLists groups of the environment in _embedded.groups. filter takes a SCIM expression on name, externalId, displayName, id, population.id or sourceId; limit up to 1000, cursor from _links.next. Needs permission dir:read:group.
Identity provider, 4 operations
create_identity_providerCreate identity providerPOSTCreates an external identity provider; name and type are required, plus the provider's client id and secret (appId and appSecret for FACEBOOK). Secrets are not returned. Needs permission identityProviders:create:identityProvider.delete_identity_providerDelete identity providerDELETEPermanently deletes an external identity provider (id from list_identity_providers); users can no longer sign on through it. Needs permission identityProviders:delete:identityProvider.get_identity_providerGet identity providerGETFetches one external identity provider by id (from list_identity_providers). Client secrets are not returned. Needs permission identityProviders:read:identityProvider.list_identity_providersList identity providersGETLists the external identity providers (social, OpenID Connect, SAML) of the environment. Client secrets are not returned. Needs permission identityProviders:read:identityProvider.
Password policy, 4 operations
create_password_policyCreate password policyPOSTCreates a password policy; assign it to users through a population (create_population or update_population). Needs permission dir:create:passwordPolicy.delete_password_policyDelete password policyDELETEPermanently deletes a password policy (id from list_password_policies). Needs permission dir:delete:passwordPolicy.get_password_policyGet password policyGETFetches one password policy by id (from list_password_policies). Needs permission dir:read:passwordPolicy.list_password_policiesList password policiesGETLists the password policies of the environment (each starts with Standard, Passphrase and Basic) with their complexity, age, history and lockout rules. Needs permission dir:read:passwordPolicy.
Resource, 4 operations
create_resourceCreate resourcePOSTCreates a custom resource; name is required and unique. accessTokenValiditySeconds defaults to 3600 and audience to the resource name. Needs permission resources:create:resource.delete_resourceDelete resourceDELETEPermanently deletes a custom resource (id from list_resources). Needs permission resources:delete:resource.get_resourceGet resourceGETFetches one resource by id (from list_resources). Its client secret is not returned. Needs permission resources:read:resource.list_resourcesList resourcesGETLists the resources (protected APIs: the PingOne API, OpenID Connect and custom resources) of the environment in _embedded.resources. Needs permission resources:read:resource.
Role, 4 operations
create_custom_admin_roleCreate custom admin rolePOSTCreates a custom admin role; name and at least one permission id (from list_admin_roles) are required. Needs permission permissions:create:roles.delete_custom_admin_roleDelete custom admin roleDELETEPermanently deletes a custom admin role (id from list_admin_roles). Needs permission permissions:delete:roles.get_custom_admin_roleGet custom admin roleGETFetches one custom admin role by id (from list_admin_roles), with its permissions. Needs permission permissions:read:roles.list_admin_rolesList admin rolesGETLists the admin roles of the environment, built-in and custom, with their permissions; filter=(type eq "CUSTOM") or (type eq "PLATFORM") keeps one kind. Role ids feed role assignments. Needs permission permissions:read:roles.
Scope, 4 operations
create_resource_scopeCreate resource scopePOSTAdds a scope to a resource (id from list_resources); name is required and unique within the resource. Needs permission resources:create:scope.delete_resource_scopeDelete resource scopeDELETEDeletes one scope of a resource (ids from list_resources and list_resource_scopes). Needs permission resources:delete:scope.get_resource_scopeGet resource scopeGETFetches one scope of a resource (ids from list_resources and list_resource_scopes). Needs permission resources:read:scope.list_resource_scopesList resource scopesGETLists the scopes of a resource (id from list_resources). Needs permission resources:read:scope.
Sign on policy, 4 operations
create_sign_on_policyCreate sign on policyPOSTCreates a sign-on policy; name is required and unique. It is never created as default: set default with update_sign_on_policy. Needs permission authn:create:signOnPolicy.delete_sign_on_policyDelete sign on policyDELETEPermanently deletes a sign-on policy (id from list_sign_on_policies). Needs permission authn:delete:signOnPolicy.get_sign_on_policyGet sign on policyGETFetches one sign-on policy by id (from list_sign_on_policies). Needs permission authn:read:signOnPolicy.list_sign_on_policiesList sign on policiesGETLists the sign-on (authentication) policies of the environment in _embedded.signOnPolicies. Needs permission authn:read:signOnPolicy.
Sign on policy assignment, 4 operations
assign_sign_on_policyAssign sign on policyPOSTAssigns a sign-on policy (signOnPolicy.id from list_sign_on_policies) to an application (id from list_applications); signOnPolicy.id and priority are required. Needs permission applications:create:signOnPolicyAssignment.get_sign_on_policy_assignmentGet sign on policy assignmentGETFetches one sign-on policy assignment of an application (ids from list_applications and list_application_sign_on_policies). Needs permission applications:read:signOnPolicyAssignment.list_application_sign_on_policiesList application sign on policiesGETLists the sign-on policies assigned to an application (id from list_applications), each with its priority. Needs permission applications:read:signOnPolicyAssignment.unassign_sign_on_policyUnassign sign on policyDELETERemoves a sign-on policy assignment from an application (ids from list_applications and list_application_sign_on_policies). Needs permission applications:delete:signOnPolicyAssignment.
Subscription, 4 operations
create_webhook_subscriptionCreate webhook subscriptionPOSTCreates a webhook: PingOne then sends every matching audit event to httpEndpoint.url (HTTPS, IPv4 only) while enabled is true. name, enabled, filterOptions and verifyTlsCertificates are required. Needs permission subscriptions:create:subscription.delete_webhook_subscriptionDelete webhook subscriptionDELETEDeletes a webhook subscription (id from list_webhook_subscriptions); PingOne stops sending its events. Needs permission subscriptions:delete:subscription.get_webhook_subscriptionGet webhook subscriptionGETFetches one webhook subscription by id (from list_webhook_subscriptions). Request headers set on it are not returned. Needs permission subscriptions:read:subscription.list_webhook_subscriptionsList webhook subscriptionsGETLists the webhook subscriptions of the environment, with their event filters, format and target URL. Request headers set on them are not returned. Needs permission subscriptions:read:subscription.
User, 4 operations
create_userCreate userPOSTCreates a user; username is required and unique in the environment, and the user joins the default population unless population.id is set. A password cannot be set here. Needs permission dir:create:user.delete_userDelete userDELETEPermanently deletes a user (id from list_users) from the directory. PingOne answers 204 with no body. Needs permission dir:delete:user.get_userGet userGETFetches one user by id (from list_users). include=memberOfGroupIDs or memberOfGroupNames adds the groups the user belongs to. Needs permission dir:read:user.list_usersList usersGETLists users of the environment in _embedded.users. filter takes a SCIM expression (username eq "jdoe", memberOfGroups[id eq "<group id>"]); limit up to 200 per page, cursor from _links.next for the next page. Needs permission dir:read:user.
Linked account, 3 operations
delete_linked_accountDelete linked accountDELETERemoves the link between a user and an external identity provider account (ids from list_users and list_linked_accounts). PingOne answers 204 with no body. Needs permission dir:delete:userLinkedAccounts.get_linked_accountGet linked accountGETFetches one linked account of a user (ids from list_users and list_linked_accounts). Needs permission dir:read:userLinkedAccounts.list_linked_accountsList linked accountsGETLists the external identity provider accounts linked to a user (id from list_users), each with its identityProvider and externalId. Needs permission dir:read:userLinkedAccounts.
Session, 3 operations
delete_user_sessionDelete user sessionDELETEEnds one sign-on session of a user (ids from list_users and list_user_sessions), other than the current session. PingOne answers 204 with no body. Needs permission authn:delete:sessions.get_user_sessionGet user sessionGETFetches one sign-on session of a user (ids from list_users and list_user_sessions). Needs permission authn:read:sessions.list_user_sessionsList user sessionsGETLists the sign-on sessions of a user (id from list_users) in _embedded.sessions, with creation and last activity times, browser, operating system and device. Needs permission authn:read:sessions.
Activity, 2 operations
get_audit_activityGet audit activityGETFetches one audit event by id (from list_audit_activities): action, actors, resources and result. Needs permission audit_reporting:read:activity.list_audit_activitiesList audit activitiesGETLists audit events of the environment in _embedded.activities. filter takes a SCIM expression such as recordedat gt "2024-01-01T00:00:00Z" AND recordedat lt "2024-01-02T00:00:00Z". Needs permission audit_reporting:read:activity.
Agreement consent, 2 operations
get_user_agreement_consentGet user agreement consentGETReturns the current consent state of a user (id from list_users) for one agreement (id from list_user_agreement_consents). Needs permission agreements:read:userConsent.list_user_agreement_consentsList user agreement consentsGETLists the current consent state of a user (id from list_users) for each terms of service agreement. Needs permission agreements:read:userConsent.
Default identity provider, 2 operations
get_population_default_idpGet population default idpGETReturns the default identity provider of a population (id from list_populations). Needs permission dir:read:population.set_population_default_idpSet population default idpPUTSets the default identity provider of a population (id from list_populations): an id from list_identity_providers, or no id for PingOne itself. Needs permission dir:update:population.
Enabled, 2 operations
get_user_enabledGet user enabledGETTells whether a user (id from list_users) is enabled, that is allowed to authenticate. Needs permission dir:read:user.set_user_enabledSet user enabledPUTEnables or disables a user (id from list_users): enabled false stops the user from authenticating until it is set back to true. Needs permission dir:update:userEnabled.
Schema, 2 operations
get_schemaGet schemaGETFetches one schema by id (from list_schemas); expand=attributes lists its attributes. Needs permission dir:read:schema.list_schemasList schemasGETLists the schemas of the environment (the User schema) with their attributes. Needs permission dir:read:schema.
User account, 2 operations
lock_user_accountLock user accountPOSTLocks a user account (id from list_users) until unlockAt, a future ISO 8601 time; PingOne does not lock it when unlockAt is missing or past. unlock_user_account ends the lock early. Needs permission dir:lock:userAccount.unlock_user_accountUnlock user accountPOSTUnlocks a locked user account (id from list_users) and resets the MFA lockout counter; no body is needed. Needs permission dir:unlock:userAccount.
User password, 2 operations
force_password_changeForce password changePOSTForces a user (id from list_users) to change their password at the next sign-on; no new password is supplied. Needs permission dir:forceChange:userPassword.unlock_user_passwordUnlock user passwordPOSTUnlocks a user's locked-out password (id from list_users) and resets the MFA lockout counter; no body is needed. Needs permission dir:unlock:userPassword.
Active identity count, 1 operation
list_active_identity_countsList active identity countsGETCounts active identities from a start date to now: filter is required (startDate ge "<ISO 8601 date>"), limit 1 to 100, order startDate or -startDate. Needs permission orgmgt:read:environment.
Application permission, 1 operation
list_resource_application_permissionsList resource application permissionsGETLists the PingOne Authorize application permissions defined on a resource (id from list_resources). Needs permission resources:read:scope.
Application signon, 1 operation
list_application_signon_countsList application signon countsGETCounts successful sign-ons per application. filter (occurredAt ge "<ISO 8601 date>"), samplePeriod (1 to 8760) and samplePeriodCount (1 to 1000) are all required. Needs permission audit_reporting:read:activity.
Capability, 1 operation
get_environment_capabilitiesGet environment capabilitiesGETReturns which features the environment's license enables (canUseMfa, canUseIdentityProviders...) and its license quantities. Needs permission orgmgt:read:environment.
Password, 1 operation
get_password_stateGet password stateGETReturns the password state of a user (id from list_users): status such as OK, MUST_CHANGE_PASSWORD, PASSWORD_EXPIRED, PASSWORD_LOCKED_OUT or NO_PASSWORD, and when it last changed. Needs permission dir:read:userPassword.
Total identity, 1 operation
list_total_identity_countsList total identity countsGETCounts the unique identities of the environment per day between a startDate and an endDate given in filter (startDate eq "..." and endDate eq "..."). Needs permission orgmgt:read:environment.
User activity, 1 operation
list_user_activity_countsList user activity countsGETCounts successful and failed sign-ons and password resets per period; without a startDate and endDate filter it covers the past 30 days. Needs permission audit_reporting:read:activity.
Showing the first 120 of 137 endpoints. The rest are in the product, searchable from the workflow builder and from chat.
Use PingOne Platform from Claude Code, Cursor or Codex
Connect PingOne Platform in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its PingOne Platform operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect PingOne Platform
- Create your workspace
Sign up free. Nothing to install.
- Connect PingOne Platform once
Add your PingOne Platform connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
PingOne Platform integration FAQ
What can you do with the PingOne Platform integration?
LiveContext exposes 137 operations on PingOne Platform, covering attribute, role assignment, member of group and population.
