Table of contents

Available APIs

The APIs that you have access to depend on the services that are installed in your environment.

IBM® Cloud Pak for Data and several of the services that run on the platform provide open and extensible APIs that you can use to collect, organize, and analyze your data and to infuse your applications with AI. With this collection of REST APIs, you can:

  • Automate and govern your AI lifecycle in business applications so that you can operationalize AI.
  • Implement data-driven processes and operations that feed your AI and ML applications.

You can authenticate to the IBM Cloud Pak for Data platform and all of the APIs by using a single authentication token. See the Get authorization token method.

For more information about the APIs that you can use, see:

  • Apache Spark jobs API

    Description

    In IBM Cloud Pak for Data, you can run Spark jobs or applications on your IBM Cloud Pak for Data cluster without installing Watson™ Studio by using the Spark jobs REST APIs of Analytics Engine Powered by Apache Spark.

    You can submit any Spark application that runs Spark SQL or data transformation, data science, and machine learning jobs by using the Spark jobs REST API. Each submitted job runs in a dedicated cluster.

    Requirements
    To use this API, an administrator must install this service on the IBM Cloud Pak for Data platform. To determine whether the service is installed, open the Services catalog and check whether the service is enabled.
    API reference
    Spark jobs API syntax, parameters and return codes

  • Data Virtualization REST API

    Description
    The Data Virtualization REST API connects to your service deployment, so that you can manage your virtual data, data sources, and user roles. Additionally, by using the Data Virtualization REST API, you can virtualize and publish data to the default catalog in Watson Knowledge Catalog.
    Requirements
    To use this API, an administrator must install this service on the IBM Cloud Pak for Data platform. To determine whether the service is installed, open the Services catalog and check whether the service is enabled.
    API reference
    Data Virtualization REST API.

  • IBM Cloud Pak for Data platform API

    Description

    The IBM Cloud Pak for Data platform API is an administration API that you can use to:

    • Authenticate to the platform.
    • Manage the users who have access to the platform.
    • Manage the roles that are defined on the platform.
    • Update your user account on the platform.
    • Monitor the status of the IBM Cloud Pak for Data platform.
    Requirements
    To use this API, the Cloud Pak for Data control plane must be installed.
    API reference
    https://cloud.ibm.com/apidocs/cloud-pak-data

  • IBM Master Data Connect API

    Description

    The IBM Master Data Connect API provides users and systems with fast, scalable, and concurrent access to your organization's most trusted master data from IBM InfoSphere® Master Data Management. You can use the API to:

    • View master data records.
    • Run full text or property query searches on your master data.
    • Run graph queries on your master data.
    • View the logical model of your data.
    • Bulk load sample data (with appropriate permissions).
    Requirements
    To use this API, the Master Data Connect service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/master-data-connect-cpd-v1
    Learn more
    See Accessing trusted master data.

  • Open Data for Industries APIs

    Description
    The Open Data for Industries API connects to your service deployment, so that you can ingest, enrich, index, search and manage data. Thus, the API helps to interface stakeholders application with Open Data for Industries data platform.
    Requirements
    To use this API, an administrator must install this service on the IBM Cloud Pak for Data platform. To determine whether the service is installed, open the Services catalog and check whether the service is enabled.
    API reference
    Open Data for Industries API reference.

  • OpenPages® APIs

    Description
    The OpenPages APIs provide access to OpenPages data and metadata. You can use the APIs to develop solutions that extend the application.
    Requirements
    To use these APIs, the OpenPages service must be installed.
    API reference

  • Streams APIs

    Streams Java™ Application API
    Description
    Use this API to create streaming applications by using only Java and Scala, without using Streams Processing Language.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Overview (Java Application API for Streams)
    Learn more
    See Java Application API Development Guide.
    Streams JMX API
    Description
    Use this API to monitor and manage a provisioned Streams instance. By using this API, you can perform the following tasks:
    • Retrieve information about running jobs, views, and users.
    • Connect to a view to retrieve a sample of the data your application is processing.
    • Observe application health and metrics.
    • Restart processing elements in a job.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Streams JMX API
    Learn more
    See Monitoring by using REST and JMX APIs.
    Streams Python Application API
    Description
    Use this API to create streaming applications by using only Python, without using Streams Processing Language (SPL). This API supports a subset of the SPL features.

    In addition, by using this API, you can use Python classes as operators to invoke Python code in an SPL application. For example, if you want to read data from an external system and a Streams operator doesn't exist for that system, you can write an operator in Python to read the data and then use that operator in your SPL application.

    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Streams Python support
    Learn more
    See Developing Streams Applications with Python.
    See Using Python classes and functions as SPL operators.
    Streams Processing Language
    Description
    Use the Streams Processing Language API to develop and deploy streaming applications to a Streams instance. Streams Processing Language is a distributed data flow composition language that has primitive types, program structures, and definitions that are tailored for streaming data.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    https://www.ibm.com/support/knowledgecenter/SSCRJU_5.3/com.ibm.streams.splangref.doc/doc/spl-container.html
    Learn more
    See Deploying Streams Processing Language applications.
    Streams Processing Language Java Operator API
    Description
    Use this API to create streaming applications that are a mix of Java and Streams Processing Language (SPL). If you have existing utilities or libraries that are written in Java, or if you want to write custom processing logic in Java, use this API to create a Java operator that can be called from an SPL application. For example, if you want to read data from an external system and a Streams operator doesn't exist for that system, you can write an operator in Java to read the data and then use that operator in your application.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Overview (Streams Java Operator API)
    Creating operators
    Streams Processing Language Operator Code Generation API
    Description
    Use this API to develop generic Streams Processing Language primitive operators. By using code generator templates, you can create reusable and generic SPL operators that can't be achieved in pure C++ or Java.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    SPL Operator Code Generation API Documentation
    Streams Processing Language Operator Runtime C++ API
    Description
    Use this API to create streaming applications that are a mix of C++ and Streams Processing Language (SPL). By using this API, you can use existing or custom C++ code to create an operator that you can call from an SPL application.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Creating operators
    Streams REST API
    Description
    Use this API to monitor and manage a provisioned Streams instance and the corresponding build service. By using this API, you can perform the following tasks:
    • Retrieve information about running jobs, views, and users.
    • Connect to a view to retrieve a sample of the data your application is processing.
    • Observe application health and metrics.
    • Restart processing elements in a job.
    Requirements
    To use this API, the Streams service must be installed.
    API reference
    Streams REST API reference
    Learn more
    See Monitoring by using REST and JMX APIs.
    Available Streams toolkits
    Description
    Streams includes toolkits that provide functions for common scenarios. For example, you can use toolkits to do the following tasks:
    • Connect to popular data sources such as MQTT servers, JDBC databases, Apache Kafka, HBase, and HDFS.
    • Score R models, process geospatial and time series data, and convert speech to text.
    • Send emails and parse data in Apache Avro, JSON, and more.
    Requirements
    To use the toolkits, the Streams service must be installed.
    API reference
    Toolkits

  • Streams Flows API

    Description
    The Streams Flows API provides collect and analyze capabilities. You can use the API to create, update, delete, list, start, and stop streams flows.

    With Streams Flows, you can:

    • Apply real-time analytics to massive amounts of moving data.
    • Read data from various Sources, such as Kafka, MQTT, and Watson IoT.
    • Write results to different Targets, such as Kafka, MQTT, Cloudant®, Db2®, and Redis.
    Requirements

    To use this API, the following services must be installed:

    • Streams
    • Streams Flows
    API reference

  • Watson Data API

    Description

    The Watson Data API provides collect and organize capabilities. You can use the API to manage data-related assets and the people who need to use these assets. For example, you can use the API to:

    • Manage analytics projects.
    • Manage catalogs.
    • Manage the connections that are available to analytics projects and to catalogs.
    • Manage governance policies.
    • Discover assets from a connection.
    • View the lineage of an asset.
    Requirements

    To use this API, the following services must be installed:

    • Watson Knowledge Catalog
    • Watson Studio
    API reference
    https://cloud.ibm.com/apidocs/watson-data-api-cpd

  • Watson OpenScale API

    Description

    The Watson OpenScale API provides infuse capabilities. You can use the API to:

    • Measure the outcomes of your AI models.
    • Ensure that your models are fair.
    • Ensure that your models are explainable.
    Requirements
    To use this API, the Watson OpenScale service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/ai-openscale

  • Watson API Kit

    The Watson API Kit combines several Watson services. You can choose which services to install. You can combine the features from these services to build AI applications or to enhance your existing applications with AI.

    Watson Knowledge Studio (UI)

    See Find entities and relationships in text documents with Watson Knowledge Studio.

    Watson Language Translator (API and SDKs)
    Description
    The Watson Language Translator API provides infuse capabilities. You can use the API to translate text from one language to another. The service offers multiple IBM provided translation models that you can customize based on your unique terminology and language.

    Use Language Translator to take news from across the globe and present it in your language, communicate with your customers in their own language, and more.

    Requirements
    To use this API, the Watson Language Translator service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/language-translator-data
    Learn more
    See Translating text with Watson Language Translator.
    Watson Speech to Text (API and SDKs)
    Description
    The Watson Speech to Text API provides infuse capabilities. You can use this API to quickly convert audio and voice into written text so that you can add speech transcription services to your applications.
    Requirements
    To use this API, the Watson Speech to Text service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/speech-to-text-data
    Learn more
    See Transcribing speech with Watson Speech to Text.
    Watson Text to Speech (API and SDKs)
    Description

    The Watson Text to Speech API provides infuse capabilities. You can use this API to quickly convert written text into natural-sounding speech. For example, you can use the service to:

    • Improve customer experience and engagement by interacting with users in multiple languages and tones.
    • Increase content accessibility for users with different abilities.
    • Provide audio options to avoid distracted driving.
    • Automate customer service interactions to increase efficiency.
    Requirements
    To use this API, the Watson Text to Speech service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/text-to-speech-data
    Learn more
    See Synthesizing speech with Watson Text to Speech.

  • Watson Assistant API and SDKs

    Description
    The Watson Assistant API provides infuse capabilities. You can use this API to build conversational interfaces into any app, device, or channel. The API combines machine learning and natural language understanding to deliver an engaging, unified problem-solving experience.
    Requirements
    To use this API, the Watson Assistant service must be installed.
    API reference
    Learn more
    See Building an assistant with Watson Assistant.

  • Watson Discovery API and SDKs

    Description
    The Watson Discovery APIs provide an AI-powered search engine that you can use to extract answers from complex business documents.

    You can enhance the ability of Watson Discovery to understand domain-specific language with the Watson Knowledge Studio service.

    You can also surface information that Watson Discovery unearths in Watson Assistant.

    Requirements
    To use this API, the Watson Discovery service must be installed.
    API reference
    https://cloud.ibm.com/apidocs/discovery-data
    Learn more
    See Finding answers with Watson Discovery.

  • Watson Machine Learning APIs

    Description
    You can train, store, deploy, and score models and functions using the Watson Machine Learning API or Python client library. You can:
    • Build, and train analytical models and neural networks
    • Deploy your analytical models and neural networks for use in other applications
    Requirements
    To use this API, the Watson Machine Learning service must be installed.
    API reference
    Watson Machine Learning API
    Use the Watson Machine Learning REST APIS to interact with your machine learning assets.
    http://cloud.ibm.com/apidocs/machine-learning-cp
    Watson Machine Learning Python client
    Use the Watson Machine Learning Python client to build, train, and deploy models and functions and run scripts.
    http://ibm-wml-api-pyclient.mybluemix.net