IBM watsonx Orchestrate API Client

raw JSON →
2.9.0 verified Sat May 09 auth: no python

IBM watsonx Orchestrate ADK API Client Library for Python. Version 2.9.0 requires Python 3.11-3.13. Provides client classes to interact with watsonx Orchestrate APIs. Releases follow IBM's cadence.

pip install ibm-watsonx-orchestrate-clients
error ModuleNotFoundError: No module named 'ibm_watsonx_orchestrate'
cause Package not installed or wrong import name.
fix
Install pip install ibm-watsonx-orchestrate-clients and use from ibm_watsonx_orchestrate import OrchestrateClient.
error ImportError: cannot import name 'OrchestrateClient' from 'ibm_watsonx_orchestrate_clients'
cause Using the package name with hyphens as module name.
fix
Correct import: from ibm_watsonx_orchestrate import OrchestrateClient.
error TypeError: __init__() got an unexpected keyword argument 'api_key'
cause Passing api_key directly to OrchestrateClient constructor is not supported; use authenticator.
fix
Use from ibm_cloud_sdk_core.authenticators import IAMAuthenticator and pass authenticator=IAMAuthenticator('your-key').
gotcha Import uses underscores: `from ibm_watsonx_orchestrate` not `ibm_watsonx_orchestrate_clients`.
fix Use `from ibm_watsonx_orchestrate import OrchestrateClient`.
deprecated The `OrchestrateClient` constructor may accept parameters that are deprecated; use authenticator objects.
fix Always pass an `authenticator` from `ibm_cloud_sdk_core` instead of raw API keys.
gotcha Service URL must be set explicitly; defaults may point to wrong region or staging.
fix Call `client.set_service_url('https://api.watsonx.orchestrate.cloud.ibm.com')` after construction.

Initializes the client with an IAM API key and lists solutions.

from ibm_watsonx_orchestrate import OrchestrateClient
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

authenticator = IAMAuthenticator('your-api-key')
client = OrchestrateClient(authenticator=authenticator)
client.set_service_url('https://api.watsonx.orchestrate.cloud.ibm.com')
# List solutions
solutions = client.list_solutions().get_result()
print(solutions)