Skip to main content
Glama
pingidentity

PingOne Advanced Identity Cloud MCP Server

Official
by pingidentity

Update Journey

updateJourney
Idempotent

Update an existing authentication journey by merging provided metadata fields and optionally replacing the node graph atomically.

Instructions

Update an existing authentication journey. Fetches the current journey, merges any caller-provided metadata fields (description, identityResource, mustRun, innerTreeOnly, uiConfig, enabled, maximumSessionTime, maximumIdleTime), and PUTs the result back. If nodes and/or entryNodeId are provided, the graph is replaced atomically using the same UUID transformation pipeline as createJourney; otherwise the existing graph is preserved unchanged. Fields not supplied by the caller are preserved from the fetched journey.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
realmYesThe realm containing the journey
journeyNameYesThe name of the journey to update
descriptionNoAdmin-facing description of the journey
identityResourceNoThe identity resource that the journey authenticates against. Expected format: "managed/<realm>_<objectType>" (e.g., "managed/alpha_user", "managed/bravo_role").
mustRunNoWhether the journey must run to completion
innerTreeOnlyNoWhether the journey can only be used as an inner tree
uiConfigNoUnbounded JSON object of UI configuration key/value pairs. The set of meaningful keys is defined by AM and is not enumerated here. To discover the shape for a given journey, read it first with getJourney.
enabledNoWhether the journey is enabled
maximumSessionTimeNoMaximum session time in minutes
maximumIdleTimeNoMaximum idle time in minutes
entryNodeIdNoID of the first node (connected from Start). Required when replacing the graph. Can be human-readable; will be transformed to UUID.
nodesNoMap of node IDs to node definitions. When provided, replaces the existing graph entirely and must be provided together with entryNodeId. Keys can be human-readable (e.g., "login-page"); they will be transformed to UUIDs.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds value beyond annotations by detailing the fetch-merge-PUT pattern, atomic graph replacement, and UUID transformation. Annotations (destructiveHint=false, idempotentHint=true) are consistent and the description provides operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two focused paragraphs: first on the general update flow, second on graph behavior. Every sentence serves a purpose without redundancy or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 params, nested objects, no output schema), the description covers the core behaviors: fetch-merge-PUT, atomic graph replacement, and preservation of unspecified fields. It doesn't explain the return value, but the update pattern is standard and the agent can infer success/failure from API conventions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, the description still adds meaning: it explains merge behavior ('Fields not supplied by the caller are preserved'), graph replacement condition, and UUID transformation. This enriches the agent's understanding beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Update an existing authentication journey', with a specific verb and resource. It distinguishes itself from sibling tools like createJourney (create new) and updateJourneyNode (update a single node) by focusing on the full journey update.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to provide nodes/entryNodeId (for atomic graph replacement) and when not to (for partial metadata update). It doesn't explicitly contrast with updateJourneyNode for node-level changes, but the context is clear enough for most use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pingidentity/aic-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server